@font-face{font-family:Nunito;src:url(/fonts/nunito-latin-wght-normal.woff2)format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:Lexend;src:url(/fonts/lexend-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fbf6ee;--surface:#fffdf9;--warm:#fce3d6;--line:#eadfd2;--card-line:#f0e7dc;--outline:#8c7b70;--calm:#cfdcc8;--sage-ink:#4a6843;--soft:#dcd6ee;--add-win:#f2735a;--celebrate:#ffd166;--sun-wash:#fff1cc;--keep-wash:#fff7e0;--marker-dot:#9db594;--postmark:#3b2a2259;--jar-glass:#d9cdbf;--jar-lid:#cfdcc8;--jar-shine:#ffffffb3;--text:#3b2a22;--text-muted:#6b5448;--on-accent:#2a1a14;--danger:#a8452f;--toggle-on:#5e7f56;--toggle-off:#e3d8cc;--scrim:#28190f61;--tab-bar:#fffdf9f7;--nav-bar:#f5ece1;--hc-border:0;--search-mark:#ffe29a;--focus:#3b2a22;--e1:0 1px 2px #3b2a220d, 0 6px 16px #3b2a220f;--e2:0 8px 24px #28190f24;--lift:0 2px 4px #3b2a220f, 0 14px 30px #7850141f;--coral-glow:0 6px 16px #f2735a47;--dialog:0 24px 60px #0000002e;--composer-ring:0 0 0 2px #f2735a54;--font:"Nunito", ui-rounded, system-ui, sans-serif;--t-today-wide:2.5rem;--t-today-rail:2.25rem;--t-title:2rem;--t-large-title:2.125rem;--t-keepsake:1.75rem;--t-need-win:1.625rem;--t-heading:1.375rem;--t-section:1.25rem;--t-postcard:1.1875rem;--t-body:1.0625rem;--t-callout:.9375rem;--t-label:.875rem;--t-caption:.8125rem;--t-key:.75rem;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;--s8:48px;--sidebar:256px;--rail:88px;--topbar:52px;--col:600px;--read:640px;--aside:320px;--pane:420px;--page:720px;--sheet:560px;--dialog-w:560px;--margin:20px;--r-icon:10px;--r-field:20px;--r-md:16px;--r-postcard:22px;--r-card:24px;--r-keepsake:28px;--r-sheet:34px;--r-pill:999px;--r-report:12px;--r-nav:14px;--ease-out:cubic-bezier(.22,1,.36,1);--ease-standard:cubic-bezier(.4,0,.2,1);--ease-app:cubic-bezier(.2,.8,.2,1);--ease-press:cubic-bezier(0,0,.2,1);--spring-dot:cubic-bezier(.34,1.6,.5,1);--spring-soft:cubic-bezier(.34,1.3,.5,1);--d-press:.12s;--d-quick:.2s;--d-standard:.32s;--d-halo:.4s;--d-calm:.15s;--d-land-hold:.4s;--d-land:1.2s;--d-chip-hold:1.6s;--d-exhale:.48s;--d-undo:6s;--d-auto-close:4s;--d-cover:.24s}@media (min-width:48em){:root{--margin:32px}}@media (min-width:64em){:root{--margin:40px}}@media (min-width:90em){:root{--margin:48px}}@media (prefers-color-scheme:dark){:root:not([data-mode=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#1f1a17;--surface:#2a231f;--warm:#3a2c26;--line:#3e342e;--card-line:#342b26;--outline:#a89487;--calm:#3b4a38;--sage-ink:#b8d1ae;--soft:#3b3650;--sun-wash:#3f3022;--keep-wash:#352a1f;--marker-dot:#7e9a75;--postmark:#f6ede466;--jar-glass:#54473f;--jar-lid:#3b4a38;--jar-shine:#ffffff14;--text:#f6ede4;--text-muted:#cdbbaf;--danger:#f59a86;--toggle-on:#8fb286;--toggle-off:#4a3f38;--scrim:#0000008c;--tab-bar:#2a231ff7;--nav-bar:#2a231f;--search-mark:#5a4524;--focus:#f6ede4;--e1:none;--lift:0 14px 30px #00000059;--coral-glow:none;--e2:0 8px 24px #0006}}:root[data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#1f1a17;--surface:#2a231f;--warm:#3a2c26;--line:#3e342e;--card-line:#342b26;--outline:#a89487;--calm:#3b4a38;--sage-ink:#b8d1ae;--soft:#3b3650;--sun-wash:#3f3022;--keep-wash:#352a1f;--marker-dot:#7e9a75;--postmark:#f6ede466;--jar-glass:#54473f;--jar-lid:#3b4a38;--jar-shine:#ffffff14;--text:#f6ede4;--text-muted:#cdbbaf;--danger:#f59a86;--toggle-on:#8fb286;--toggle-off:#4a3f38;--scrim:#0000008c;--tab-bar:#2a231ff7;--nav-bar:#2a231f;--search-mark:#5a4524;--focus:#f6ede4;--e1:none;--lift:0 14px 30px #00000059;--coral-glow:none;--e2:0 8px 24px #0006}[data-theme=sage]{--background:#f3f7f0;--surface:#fdfefb;--warm:#e2ecdc;--line:#d9e3d2;--card-line:#e6ede1;--calm:#c2d4b8;--marker-dot:#8faa85;--tab-bar:#fdfefbf7;--nav-bar:#e9f0e4;--jar-glass:#c6d3be;--jar-lid:#c2d4b8}[data-theme=lavender]{--background:#f6f4fa;--surface:#fefdff;--warm:#e7e2f4;--line:#e0dbec;--card-line:#eae6f3;--soft:#d3cbec;--tab-bar:#fefdfff7;--nav-bar:#eeeaf6;--jar-glass:#d3cce3}[data-theme=ocean]{--background:#f1f6f8;--surface:#fcfeff;--warm:#dbe9ef;--line:#d6e2e7;--card-line:#e3ebef;--tab-bar:#fcfefff7;--nav-bar:#e6eff3;--jar-glass:#c9d8df}[data-theme=rose]{--background:#faf3f3;--surface:#fffcfc;--warm:#f5dedd;--line:#ecdbda;--card-line:#f2e6e5;--keep-wash:#fff5e2;--tab-bar:#fffcfcf7;--nav-bar:#f5e9e8;--jar-glass:#e3cfce}[data-mode=dark][data-theme=sage]{--background:#181d18;--surface:#222822;--warm:#2b352a;--line:#364135;--card-line:#2d362c;--calm:#3e5039;--keep-wash:#302c1e;--tab-bar:#222822f7;--nav-bar:#222822;--jar-glass:#46543f;--jar-lid:#3e5039}[data-mode=dark][data-theme=lavender]{--background:#1b1922;--surface:#25222e;--warm:#312c3d;--line:#3c3649;--card-line:#302b3b;--soft:#463e62;--tab-bar:#25222ef7;--nav-bar:#25222e;--jar-glass:#4c4560}[data-mode=dark][data-theme=ocean]{--background:#161c1f;--surface:#20272b;--warm:#29353a;--line:#344046;--card-line:#2b353a;--tab-bar:#20272bf7;--nav-bar:#20272b;--jar-glass:#3f4d54}[data-mode=dark][data-theme=rose]{--background:#1f1819;--surface:#2a2122;--warm:#3b2a2c;--line:#453436;--card-line:#372b2d;--tab-bar:#2a2122f7;--nav-bar:#2a2122;--jar-glass:#56423f}[data-contrast=high]{--background:#fff;--surface:#fff;--warm:#fff;--line:#000;--card-line:#000;--outline:#000;--calm:#fff;--sage-ink:#1f3a1a;--soft:#fff;--sun-wash:#fff;--keep-wash:#fff;--marker-dot:#000;--postmark:#000;--text:#000;--text-muted:#1a1a1a;--on-accent:#000;--danger:#8a2410;--toggle-on:#000;--toggle-off:#fff;--tab-bar:#fff;--nav-bar:#fff;--jar-glass:#000;--jar-lid:#000;--search-mark:#ffd166;--hc-border:2px solid #000;--e1:none;--lift:none;--coral-glow:none;--focus:#000}[data-contrast=high][data-mode=dark]{--background:#000;--surface:#000;--warm:#000;--line:#fff;--card-line:#fff;--outline:#fff;--calm:#000;--sage-ink:#cfe6c4;--soft:#000;--sun-wash:#000;--keep-wash:#000;--marker-dot:#fff;--postmark:#fff;--text:#fff;--text-muted:#e6e6e6;--danger:#ff9f8a;--toggle-on:#fff;--toggle-off:#000;--tab-bar:#000;--nav-bar:#000;--jar-glass:#fff;--jar-lid:#fff;--search-mark:#ffd166;--hc-border:2px solid #fff;--focus:#fff}@media (forced-colors:active){:root{--hc-border:2px solid CanvasText}}html{font-size:100%}html[data-text=large]{font-size:112.5%}html[data-text=larger]{font-size:125%}html[data-font=lexend]{--font:"Lexend", "Nunito", system-ui, sans-serif}html[data-font=lexend] body{line-height:calc(1em + 8px)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--background);color:var(--text);font-family:var(--font);font-size:var(--t-body);-webkit-font-smoothing:antialiased;margin:0;font-weight:400;line-height:1.4118}h1,h2,h3,p{margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}img,svg{display:block}:focus{outline:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a{color:var(--sage-ink);-webkit-text-decoration-color:var(--calm);text-decoration-color:var(--calm);text-underline-offset:3px}a:hover{color:var(--text)}.app{min-height:100dvh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.app-content{padding:var(--s8) var(--margin) 140px;flex:1}@media (max-width:79.99em){.app-content{padding-top:40px}}@media (max-width:63.99em){.app-content{padding-top:8px}}.sidebar{width:var(--sidebar);background:var(--nav-bar);border-right:var(--hc-border);flex-direction:column;flex:none;gap:4px;height:100dvh;padding:20px 16px;display:flex;position:sticky;top:0}.app[data-shell=mac] .sidebar{-webkit-app-region:drag;padding-top:52px}.app[data-shell=mac] .sidebar :is(button,a){-webkit-app-region:no-drag}.sidebar-brand{align-items:center;gap:10px;padding:4px 8px 20px;font-size:1.0625rem;font-weight:800;display:flex}.sidebar-add{height:48px;margin-bottom:18px}.nav-item{border-radius:var(--r-nav);height:44px;color:var(--text-muted);text-align:left;transition:background var(--d-quick) var(--ease-app);background:0 0;border:0;align-items:center;gap:12px;padding:0 14px;font-size:1rem;font-weight:700;display:flex}.nav-item:hover{background:color-mix(in srgb, var(--warm) 55%, transparent);color:var(--text)}.nav-item:active{transform:scale(.98)}.nav-item[aria-current=page]{background:var(--warm);color:var(--text);font-weight:800}[data-contrast=high] .nav-item[aria-current=page]{box-shadow:inset 0 0 0 2px var(--text)}.nav-item svg{flex:none;width:22px;height:22px}.sidebar-spacer{flex:1}.sidebar-hide{height:44px;font-size:.9375rem}.sidebar-account{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:6px;padding:12px 10px 4px;display:flex}.sidebar-offline{font:700 var(--t-caption)/1.38 var(--font);color:var(--text-muted);align-items:center;gap:6px;display:flex}.sidebar-offline:before{content:"";background:var(--marker-dot);border-radius:50%;width:8px;height:8px}.rail{width:var(--rail);background:var(--nav-bar);border-right:var(--hc-border);flex-direction:column;flex:none;align-items:center;gap:6px;height:100dvh;padding:16px 0;display:flex;position:sticky;top:0}.rail-add{border-radius:50%;width:56px;height:56px;margin-bottom:14px}.rail-item{width:72px;font:700 .75rem/1.2 var(--font);color:var(--text-muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;display:flex}.rail-item .pill{border-radius:16px;place-items:center;width:56px;height:32px;display:grid}.rail-item[aria-current=page]{color:var(--text);font-weight:800}.rail-item[aria-current=page] .pill{background:var(--warm)}.topbar{height:var(--topbar);align-items:center;gap:8px;padding:0 16px 0 20px;display:flex}.tab-fade{background:linear-gradient(to bottom, transparent, var(--background) 46%);pointer-events:none;height:140px;position:fixed;inset:auto 0 0}.tab-bar{background:var(--tab-bar);border:1px solid var(--line);width:min(400px,100% - 40px);height:68px;box-shadow:var(--e1);border-radius:34px;gap:4px;padding:4px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.tab{font:700 .75rem var(--font);color:var(--text-muted);background:0 0;border:0;border-radius:30px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.tab[aria-current=page]{background:var(--warm);color:var(--text);font-weight:800}.tab-add{border-radius:50%;width:56px;height:56px;position:fixed;bottom:104px;right:20px}@media (min-width:48em){.tab-add{right:calc(50% - 260px)}}.btn{border:var(--hc-border);border-radius:var(--r-pill);transition:transform var(--d-press) var(--ease-press), background var(--d-quick) var(--ease-app);justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.btn:active{transform:scale(.97)}.btn[disabled]{background:var(--warm);color:var(--text-muted);cursor:default;transform:none}.btn-add{background:var(--add-win);color:var(--on-accent);box-shadow:var(--coral-glow);width:100%;height:64px;font-size:1.25rem}.btn-add:hover{background:#ee6a50}.btn-save{background:var(--add-win);color:var(--on-accent);height:44px;padding:0 20px;font-size:1rem}.btn-tonal{background:var(--calm);color:var(--text);height:56px;padding:0 22px;font-size:1.0625rem}.btn-tonal:hover{background:color-mix(in srgb, var(--calm) 92%, var(--text))}.btn-surface{background:var(--surface);border:1.5px solid var(--line);height:52px;padding:0 20px;font-size:1rem}.btn-surface:hover{border-color:var(--outline)}.btn-sun{background:var(--celebrate);color:var(--on-accent);height:56px;font-size:1.0625rem}.btn-text{color:var(--sage-ink);background:0 0;border:0;min-height:44px;padding:0 8px;font-size:1rem}.btn-text:hover{text-underline-offset:3px;text-decoration:underline}.btn-text.danger{color:var(--danger)}.btn-icon{background:var(--warm);border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.btn-sunbutton{background:var(--celebrate);width:44px;height:44px;color:var(--on-accent);border:var(--hc-border);border-radius:50%}.key{font:800 var(--t-key)/1.33 var(--font);background:#2a1a141f;border-radius:6px;padding:2px 7px}.key.outline{border:1px solid var(--line);color:var(--text-muted);background:0 0}.today{justify-content:center;align-items:flex-start;gap:48px;display:flex}@media (max-width:89.99em){.today{gap:40px}}.today-col{width:100%;max-width:var(--col);min-width:0}.today-aside{width:var(--aside);flex-direction:column;flex:none;gap:18px;padding-top:52px;display:flex}@media (max-width:89.99em){.today-aside{width:300px}}@media (max-width:79.99em){.today-aside{display:none}}.today-date{min-height:44px;font:700 .9375rem/1.33 var(--font);color:var(--text-muted);align-items:center;gap:10px;display:flex}.today-pill{font:800 .875rem/1.43 var(--font);color:var(--text);background:var(--calm);border-radius:var(--r-pill);padding:4px 12px}.today-q{font:800 var(--t-today-wide)/1.15 var(--font);letter-spacing:-.3px;text-wrap:balance;margin:2px 0 0}@media (max-width:79.99em){.today-q{font-size:var(--t-today-rail)}}@media (max-width:63.99em){.today-q{font-size:var(--t-title)}}.today-late{font:600 .9375rem/1.47 var(--font);color:var(--text-muted);text-align:center;margin-top:16px}.composer{background:var(--warm);border:var(--hc-border);border-radius:var(--r-card);box-shadow:var(--composer-ring);flex-direction:column;gap:14px;margin-top:20px;padding:18px 18px 14px;display:flex;position:relative}.composer-field{min-height:60px;font:600 1.375rem/1.36 var(--font);resize:none;color:var(--text);background:0 0;border:0;outline:none}.composer-field::placeholder{color:var(--text-muted)}.composer-options{flex-wrap:wrap;gap:8px;display:flex}.option-chip{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);height:36px;font:700 .875rem var(--font);align-items:center;gap:6px;padding:0 12px;display:inline-flex}.option-chip[aria-pressed=true],.option-chip.is-set{background:var(--calm);border-color:var(--calm);font-weight:800}.composer-foot{border-top:1px solid var(--line);align-items:center;gap:12px;padding-top:12px;display:flex}.composer-hint{font:700 var(--t-caption) var(--font);color:var(--text-muted);flex:1}.composer-thumbs{gap:10px;display:flex}.thumb{object-fit:cover;border-radius:14px;width:72px;height:72px;position:relative}.composer.is-drop:after{content:"Drop to add these photos";border-radius:inherit;background:var(--surface);border:2.5px dashed var(--sage-ink);font:800 1.125rem var(--font);place-items:center;display:grid;position:absolute;inset:0}.popover{background:var(--surface);border:1px solid var(--line);width:240px;box-shadow:var(--lift);z-index:5;border-radius:18px;padding:6px;position:absolute}.popover-item{height:40px;font:700 .9375rem var(--font);border-radius:12px;align-items:center;gap:10px;padding:0 10px;display:flex}.popover-item:hover,.popover-item[aria-selected=true]{background:var(--warm)}.limit-card{background:var(--surface);border:1px solid var(--card-line);border-radius:20px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.celebration-card{background:var(--surface);border:var(--hc-border);border-radius:var(--r-keepsake);box-shadow:var(--lift);z-index:2;align-items:center;gap:28px;margin-top:20px;padding:28px;display:flex;position:relative}.celebration-card .celebrate{--s:180px}.celebration-line{font:800 1.75rem/1.21 var(--font);text-wrap:balance}.celebration-quote{background:var(--background);font:600 1rem/1.44 var(--font);color:var(--text-muted);border-radius:18px;padding:12px 16px}.is-celebrating .today-dim{opacity:.4;transition:opacity var(--d-standard) var(--ease-app)}.card{background:var(--surface);border:1px solid var(--card-line);border-radius:var(--r-card);box-shadow:var(--e1);overflow:hidden}.win-row{gap:14px;min-height:52px;padding:14px 18px;display:flex}.win-row+.win-row{border-top:1px solid var(--line)}.look-back .win-row{cursor:pointer;padding:13px 18px}.look-back .win-row:hover{background:color-mix(in srgb, var(--warm) 40%, transparent)}.win-row[aria-selected=true]{box-shadow:inset 0 0 0 2px var(--sage-ink)}.win-row.is-kept{background:var(--keep-wash);font-weight:700}.win-row.is-landed{background:var(--warm);transition:background var(--d-land) var(--ease-standard) var(--d-land-hold)}.win-marker{flex:none;place-items:center;width:28px;height:28px;display:grid}.win-marker.plain:before{content:"";background:var(--marker-dot);border-radius:50%;width:10px;height:10px}.win-marker.kept{background:var(--celebrate);color:var(--on-accent);border-radius:50%}.win-marker.person{background:var(--warm);border-radius:50%;font-size:15px}.win-text{font:400 var(--t-body)/1.41 var(--font)}.win-meta{font:700 var(--t-caption)/1.38 var(--font);color:var(--text-muted)}.win-undo{margin-left:auto}.one-tap{border-radius:var(--r-pill);background:var(--surface);border:1.5px solid var(--line);height:40px;font:700 .9375rem var(--font);align-items:center;gap:6px;padding:0 16px 0 12px;display:inline-flex}.one-tap.big{height:48px}.one-tap.low{height:56px;font-size:1.125rem}.postcard{background:var(--soft);border:var(--hc-border);border-radius:var(--r-postcard);padding:16px 18px 4px;position:relative}.postmark{border:1.5px dashed var(--postmark);border-radius:50%;width:44px;height:44px;position:absolute;top:12px;right:14px;transform:rotate(-8deg)}.need-win-card{background:var(--sun-wash);border:var(--hc-border);border-radius:var(--r-card);align-items:center;gap:14px;padding:14px 16px;display:flex}.need-win-card:hover{background:color-mix(in srgb, var(--sun-wash) 85%, var(--celebrate))}.look-back{justify-content:center;gap:32px;display:flex}.look-back-list{max-width:var(--read);flex:1;min-width:0}.look-back-cal{flex:none;width:320px;padding-top:57px}@media (max-width:79.99em){.look-back-cal{display:none}}.search{border-radius:var(--r-pill);background:var(--warm);border:var(--hc-border);align-items:center;gap:8px;width:260px;height:44px;padding:0 14px;display:flex}.search:focus-within{box-shadow:0 0 0 2px var(--text)}mark{background:var(--search-mark);color:inherit;border-radius:4px;font-weight:800}.segmented{background:var(--warm);border-radius:var(--r-pill);padding:3px;display:flex}.segmented [aria-checked=true]{background:var(--surface);font-weight:800;box-shadow:0 1px 3px #0000001f}.segmented>*{border-radius:var(--r-pill);height:38px;font:700 .9375rem var(--font);background:0 0;border:0;padding:0 18px}.filter{border-radius:var(--r-pill);border:1.5px solid var(--line);height:44px;font:700 .9375rem var(--font);background:0 0;padding:0 14px}.letter-row{background:var(--soft);border-radius:var(--r-postcard);align-items:center;gap:12px;padding:12px 14px 12px 16px;display:flex}.calendar{background:var(--surface);border:1px solid var(--card-line);border-radius:var(--r-card);padding:18px 18px 16px}.calendar-grid{grid-template-columns:repeat(7,1fr);row-gap:2px;display:grid}.cal-day{place-items:center;height:40px;display:grid}.cal-day button{width:36px;height:36px;font:700 .875rem var(--font);background:0 0;border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.cal-day button:hover{background:var(--warm)}.cal-day.has-wins button:after{content:"";background:var(--marker-dot);border-radius:50%;width:4px;height:4px}.cal-day.is-today button{box-shadow:inset 0 0 0 2px var(--text)}.cal-day.in-range{background:var(--warm)}.cal-day.in-range:first-child,.cal-day.range-start{border-radius:20px 0 0 20px}.cal-day.range-end{border-radius:0 20px 20px 0}.cal-day.outside button{color:var(--text-muted)}.win-pane{width:var(--pane);border-left:1px solid var(--line);flex:none;max-height:100dvh;padding:0 0 24px 32px;position:sticky;top:0;overflow:auto}@media (max-width:79.99em){.win-pane{background:var(--background);z-index:4;border:0;width:auto;padding:24px 40px;position:fixed;inset:0}}.year-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (max-width:39.99em){.year-grid{grid-template-columns:1fr}}.skeleton{background:var(--warm);border-radius:6px;height:12px}.keepsake{border-radius:var(--r-keepsake);background:var(--surface);border:1px solid var(--card-line);flex-direction:column;gap:14px;padding:24px 22px 20px;display:flex}.keepsake.is-kept{background:var(--keep-wash);border:var(--hc-border)}.keepsake-text{font:800 var(--t-keepsake)/1.25 var(--font);letter-spacing:-.2px}.keep-toggle{border-radius:var(--r-pill);border:1.5px solid var(--line);background:var(--surface);height:48px;padding:0 20px;font-weight:800}.keep-toggle[aria-pressed=true]{background:var(--celebrate);border-color:var(--celebrate);color:var(--on-accent)}.voice-note{background:var(--surface);border-radius:18px;align-items:center;gap:12px;padding:8px 14px 8px 8px;display:flex}.kind-word{background:var(--sun-wash);font:400 .9375rem/1.4 var(--font);border-radius:18px;padding:10px 14px}.scrim{background:var(--scrim);z-index:10;animation:fade var(--d-standard) var(--ease-app);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{width:100%;max-width:var(--dialog-w);border-radius:var(--r-sheet);max-height:calc(100dvh - 96px);box-shadow:var(--dialog);border:var(--hc-border);flex-direction:column;padding:24px 40px 32px;display:flex}.dialog.need-win{background:var(--sun-wash);height:calc(100dvh - 96px)}.dialog.letter{background:var(--soft);max-width:600px}.dialog.share{background:var(--background);max-width:720px}.sheet-add{background:var(--background);max-width:var(--sheet);border-radius:var(--r-keepsake);align-self:flex-start;margin-top:96px;padding:14px 20px 24px}@media (max-width:63.99em){.scrim{align-items:flex-end}.dialog,.sheet-add{border-radius:var(--r-sheet) var(--r-sheet) 0 0;max-width:600px;height:calc(100dvh - 12px);max-height:none;margin:0;padding:16px 20px 34px}}.support-row{background:var(--surface);border:1px solid var(--card-line);border-radius:22px;align-items:center;gap:12px;margin-top:auto;padding:12px 16px;display:flex}.handed-card{background:var(--surface);border:var(--hc-border);border-radius:var(--r-keepsake);min-height:286px;box-shadow:var(--lift);flex-direction:column;justify-content:space-between;padding:24px 22px 20px;display:flex}.cover{z-index:100;background:var(--background);animation:fade var(--d-cover) var(--ease-out);border:0;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.cover-mark{width:96px;height:96px}.cover-line{font:700 1rem var(--font);color:var(--text-muted)}.page{justify-content:center;gap:48px;display:flex}.page-index{flex:none;align-self:flex-start;width:200px;padding-top:60px;position:sticky;top:0}.page-index a{height:36px;font:700 .9375rem var(--font);color:var(--text-muted);border-radius:12px;align-items:center;padding:0 12px;text-decoration:none;display:flex}.page-index a[aria-current=true]{background:var(--warm);color:var(--text);font-weight:800}@media (max-width:79.99em){.page-index{display:none}}.page-body{max-width:var(--page);flex:1;min-width:0}.page-title{font:800 var(--t-large-title)/1.2 var(--font);letter-spacing:-.3px;margin:0}.group-label{font:800 .9375rem var(--font);color:var(--text-muted);margin-top:26px}.group{background:var(--surface);border:1px solid var(--card-line);box-shadow:var(--e1);border-radius:22px;margin-top:8px;overflow:hidden}.row{align-items:center;gap:14px;min-height:56px;padding:10px 16px;display:flex}.row+.row{border-top:1px solid var(--line)}.row:hover{background:color-mix(in srgb, var(--warm) 35%, transparent)}.row-icon{border-radius:var(--r-icon);background:var(--warm);flex:none;place-items:center;width:34px;height:34px;display:grid}.row-icon.calm{background:var(--calm)}.switch{background:var(--toggle-off);border:2px solid var(--outline);border-radius:16px;flex:none;width:51px;height:31px;position:relative}.switch:after{content:"";width:25px;height:25px;transition:left var(--d-quick) var(--ease-app);background:#fff;border-radius:50%;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #00000040}.switch[aria-checked=true]{background:var(--toggle-on);border-color:var(--toggle-on)}.switch[aria-checked=true]:after{left:21px}.field{border-radius:var(--r-field);background:var(--warm);border:var(--hc-border);height:52px;font:600 var(--t-body) var(--font);width:100%;padding:0 18px}.field:focus{box-shadow:0 0 0 2px var(--text);outline:none}.select-chip{border-radius:var(--r-pill);background:var(--surface);border:1.5px solid var(--line);height:44px;font:700 .9375rem var(--font);padding:0 16px}.select-chip[aria-pressed=true]{background:var(--calm);border-color:var(--calm);font-weight:800}.invite-code{background:var(--soft);border-radius:22px;padding:18px}.invite-code b{font:900 1.875rem var(--font);letter-spacing:5px}.banner-kind{background:var(--sun-wash);border-radius:22px;align-items:center;gap:14px;padding:14px 16px;display:flex}.emergency{background:var(--surface);border:2px solid var(--text);border-radius:22px;padding:18px}.drop-zone{border:2px dashed var(--line);text-align:center;border-radius:22px;padding:28px}.drop-zone.is-over{border-color:var(--sage-ink);background:color-mix(in srgb, var(--calm) 35%, transparent)}.report-page{border-radius:var(--r-report);background:#fffdf9;border:1px solid #eadfd2;width:240px;height:314px}.signin{place-items:center;min-height:100dvh;padding:20px;display:grid;position:relative;overflow:hidden}.signin-card{background:var(--surface);border:1px solid var(--card-line);border-radius:var(--r-keepsake);flex-direction:column;gap:16px;width:100%;max-width:440px;padding:40px;display:flex}@media (max-width:39.99em){.signin-card{padding:28px 24px}}.code-boxes{gap:8px;display:flex}.code-boxes input{background:var(--warm);text-align:center;height:60px;font:800 1.625rem var(--font);border:0;border-radius:16px;flex:1}.code-boxes input:focus{box-shadow:0 0 0 2px var(--text);outline:none}.code-boxes[aria-invalid=true] input{box-shadow:0 0 0 2px var(--danger)}.notice{background:var(--warm);font:700 .9375rem/1.4 var(--font);border-radius:16px;gap:10px;padding:12px 14px;display:flex}@keyframes fade{0%{opacity:0}to{opacity:1}}.composer{animation:composer-in var(--d-standard) var(--ease-out) both}@keyframes composer-in{0%{opacity:0;transform-origin:top;transform:scaleY(.92)}to{opacity:1;transform:none}}.celebration-card{animation:card-in var(--d-standard) var(--ease-out) both}@keyframes card-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.celebration-card .rise{animation:rise var(--d-standard) var(--ease-out) both}.celebration-card .rise:first-child{animation-delay:.9s}.celebration-card .rise:nth-child(2){animation-delay:.98s}.celebration-card .rise:nth-child(3){animation-delay:1.06s}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.celebration-card.is-leaving{animation:card-out var(--d-quick) var(--ease-standard) both}@keyframes card-out{to{opacity:0;transform:translateY(-6px)scale(.98)}}.win-row.is-new{animation:row-in var(--d-standard) var(--ease-out) both}@keyframes row-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.today-pill{transition:opacity var(--d-quick)}.one-tap.is-saved{transition:background var(--d-quick) var(--ease-app), border-color var(--d-quick) var(--ease-app)}.one-tap.is-saved .mark-cream{animation:grow var(--d-quick) var(--ease-out) both}.one-tap.is-saved .mark-dot{animation:dot-drop .26s var(--spring-dot) .12s both}@keyframes grow{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes dot-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.win-undo.is-ending{transition:opacity var(--d-quick);opacity:0}.postcard{animation:rise var(--d-standard) var(--ease-out) .2s both}.postcard.is-swapping .postcard-words{animation:swap .2s var(--ease-standard)}.postcard.is-swapping .postmark{animation:tip .4s var(--ease-standard)}@keyframes swap{50%{opacity:0}}@keyframes tip{50%{transform:rotate(-14deg)}}.dialog.need-win{animation:dialog-in var(--d-standard) var(--ease-out) both}@keyframes dialog-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:none}}.handed-card.is-handing{animation:hand .42s var(--spring-soft) both}.stack-edge.is-handing{animation:hand .42s var(--spring-soft) .12s both}@keyframes hand{0%{opacity:0;transform:translateY(40px)rotate(-2deg)}to{opacity:1;transform:none}}.handed-card.is-leaving{animation:hand-out .24s var(--ease-out) both}@keyframes hand-out{to{opacity:0;transform:translate(-24px)}}.dialog.need-win.is-closing{animation:exhale var(--d-exhale) var(--ease-out) both}@keyframes exhale{to{opacity:0;transform:translateY(24px)}}.today.sun-wash:before{content:"";background:linear-gradient(var(--sun-wash), transparent);height:200px;animation:wash-off .6s var(--ease-standard) forwards;pointer-events:none;position:fixed;inset:0 0 auto}@keyframes wash-off{to{opacity:0}}.scrim.is-closing{animation:fade var(--d-quick) reverse both}.win-pane{animation:pane-in var(--d-standard) var(--ease-out) both}@keyframes pane-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.nav-indicator{border-radius:var(--r-nav);background:var(--warm);height:44px;transition:transform var(--d-standard) var(--ease-app);position:absolute;left:16px;right:16px}.cover.is-leaving{animation:fade var(--d-quick) reverse both}.btn,.one-tap,.row,.nav-item,.win-row{transition:transform var(--d-press) var(--ease-press), background var(--d-quick) var(--ease-app), border-color var(--d-quick) var(--ease-app)}@media (prefers-reduced-motion:reduce){:root{--calm-motion:1}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}.celebration-card,.scrim,.dialog,.win-pane,.cover{animation:fade var(--d-calm) linear both!important}}[data-calm=on] *,[data-calm=on] :before,[data-calm=on] :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}[data-calm=on] :is(.celebration-card,.scrim,.dialog,.win-pane,.cover){animation:fade var(--d-calm) linear both!important}:root{--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--spring-soft:cubic-bezier(.34, 1.3, .5, 1);--spring-dot:cubic-bezier(.34, 1.6, .5, 1)}.celebrate{width:var(--s);height:var(--s);flex:none;position:relative}.celebrate>*{border-radius:50%;position:absolute}.celebrate .halo{background:var(--sun-wash);inset:0}.celebrate .sage{background:var(--calm);inset:21%}.celebrate .dot{background:var(--add-win);width:20%;height:20%;top:40%;left:40%}.celebrate .spark{background:var(--celebrate)}.celebrate .s1{--i:0;width:4.2%;height:4.2%;top:22%;left:8%}.celebrate .s2{--i:1;width:5.6%;height:5.6%;top:13%;left:82%}.celebrate .s3{--i:2;width:3.2%;height:3.2%;top:68%;left:90%}.celebrate .ring{border:max(2px, calc(var(--s) * .012)) solid var(--celebrate);opacity:0;inset:19%}.celebrate .burst{width:3.6%;height:3.6%;transform:rotate(var(--a));top:48.2%;left:48.2%}.celebrate .burst:after{content:"";background:var(--celebrate);opacity:0;border-radius:50%;position:absolute;inset:0}.celebrate .fall{background:var(--celebrate);opacity:0;width:3%;height:3%;top:-6%}.celebrate.is-playing .halo{animation:mblw-halo .4s var(--ease-out) both}.celebrate.is-playing .spark{animation:mblw-spark .24s var(--ease-out) both;animation-delay:calc(var(--rest) + var(--i) * 60ms)}.celebrate.mv-drop{--rest:.8s}.celebrate.mv-drop.is-playing .dot{animation:1s linear .2s both mblw-drop}.celebrate.mv-pop{--rest:1.3s}.celebrate.mv-pop.is-playing .dot{animation:mblw-pop .52s var(--ease-out) .35s both}.celebrate.mv-pop.is-playing .burst:after{animation:.9s cubic-bezier(.2,.7,.3,1) .45s both mblw-burst}.celebrate.mv-orbit{--rest:2.1s}.celebrate.mv-orbit.is-playing .dot{animation:mblw-orbit 1.2s var(--ease-out) .25s both}.celebrate.mv-orbit.is-playing .burst:after{animation:.9s cubic-bezier(.2,.7,.3,1) 1.35s both mblw-burst}.celebrate.mv-shower{--rest:1.6s}.celebrate.mv-shower.is-playing .dot{animation:1s linear .35s both mblw-drop}.celebrate.mv-shower.is-playing .fall{animation:1.5s cubic-bezier(.4,0,.8,.6) both mblw-fall;animation-delay:calc(.15s + var(--i) * .11s)}.celebrate.mv-ripple{--rest:1.9s}.celebrate.mv-ripple.is-playing .dot{animation:mblw-grow .9s var(--ease-out) .3s both}.celebrate.mv-ripple.is-playing .ring{animation:1.5s cubic-bezier(.2,.6,.3,1) both mblw-ring;animation-delay:calc(.65s + var(--i) * .38s)}.celebrate.mv-bloom{--rest:2.3s}.celebrate.mv-bloom.is-playing .halo{animation:mblw-halo .4s var(--ease-out) both, mblw-beat .9s ease-in-out 1.1s both}.celebrate.mv-bloom.is-playing .dot{animation:1s linear .2s both mblw-drop}.celebrate.mv-bloom.is-playing .burst:after{animation:.9s cubic-bezier(.2,.7,.3,1) .95s both mblw-burst}.celebrate.mv-bloom.is-playing .ring{animation:1.5s cubic-bezier(.2,.6,.3,1) both mblw-ring;animation-delay:calc(1s + var(--i) * .38s)}.celebrate.mv-bloom.is-playing .fall{animation:1.5s cubic-bezier(.4,0,.8,.6) both mblw-fall;animation-delay:calc(.3s + var(--i) * .11s)}@keyframes mblw-halo{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes mblw-beat{0%,to{transform:scale(1)}20%{transform:scale(1.08)}40%{transform:scale(1)}60%{transform:scale(1.05)}}@keyframes mblw-drop{0%{animation-timing-function:cubic-bezier(.5,0,1,1);transform:translateY(-420%)}45%{animation-timing-function:cubic-bezier(0,0,.4,1);transform:translateY(0)}60%{animation-timing-function:cubic-bezier(.5,0,1,1);transform:translateY(-34%)}72%{animation-timing-function:cubic-bezier(0,0,.4,1);transform:translateY(0)}82%{animation-timing-function:cubic-bezier(.5,0,1,1);transform:translateY(-14%)}90%{transform:translateY(0)}95%{transform:translateY(-4%)}to{transform:translateY(0)}}@keyframes mblw-pop{0%{transform:scale(0)}55%{transform:scale(1.4)}78%{transform:scale(.9)}to{transform:scale(1)}}@keyframes mblw-orbit{0%{opacity:0;transform:rotate(0)translate(150%)rotate(0)}10%{opacity:1}to{opacity:1;transform:rotate(540deg)translate(0)rotate(-540deg)}}@keyframes mblw-grow{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes mblw-spark{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes mblw-burst{0%{opacity:0;transform:translate(0)scale(1)}10%{opacity:1}to{opacity:0;transform:translate(1150%)scale(.6)}}@keyframes mblw-fall{0%{opacity:0;top:-6%}15%{opacity:1}80%{opacity:.9}to{opacity:0;top:96%}}@keyframes mblw-ring{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.62)}}.js [data-reveal]{opacity:0;transition:opacity .32s var(--ease-out), transform .32s var(--ease-out);transform:translateY(12px)}.js [data-reveal].is-in{opacity:1;transform:none}.hero-halo{animation:mblw-halo .6s var(--ease-out) both}.phone-sheet{transition:transform .32s var(--ease-standard);transform:translateY(105%)}.phone-sheet.is-up{transition:transform .42s var(--ease-out);transform:none}.phone-sheet .line,.phone-sheet .quote,.phone-sheet .done{opacity:0;transition:opacity .32s var(--ease-out), transform .32s var(--ease-out);transform:translateY(8px)}.phone-sheet.is-up .line{opacity:1;transition-delay:1s;transform:none}.phone-sheet.is-up .quote{opacity:1;transition-delay:1.1s;transform:none}.phone-sheet.is-up .done{opacity:1;transition-delay:1.2s;transform:none}.chip{transition:background-color .2s,border-color .2s,transform .12s}.chip:active{transform:scale(.96)}.chip .mark{transition:transform .2s var(--ease-out);transform:scale(0)}.chip .mark-dot{opacity:0;transform:translateY(-8px)}.chip .plus{transition:opacity .15s}.chip[aria-pressed=true]{background:var(--calm);border-color:var(--calm);font-weight:800}.chip[aria-pressed=true] .mark{transform:scale(1)}.chip[aria-pressed=true] .mark-dot{opacity:1;transition:transform .26s var(--spring-dot) .18s, opacity .12s ease .18s;transform:none}.chip[aria-pressed=true] .plus{opacity:0}.landed-row{transition:grid-template-rows .32s var(--ease-out);grid-template-rows:0fr;display:grid}.landed-row>div{min-height:0;overflow:hidden}.landed-row.is-in{grid-template-rows:1fr}.landed-row .row{background:var(--warm);transition:background-color 1.2s .4s}.landed-row.is-settled .row{background:0 0}.handed{transition:opacity .32s ease, transform .32s var(--ease-out)}.handed.is-out{opacity:0;transition:opacity .24s ease, transform .24s var(--ease-out);transform:translate(-24px)}.handed.is-pre{opacity:0;transition:none;transform:translateY(12px)scale(.96)}.postcard{opacity:0;transition:transform .52s var(--spring-soft), opacity .32s ease;transform:rotate(6deg)translateY(16px)}.postcard.is-in{opacity:1;transform:rotate(-2.5deg)}.postcard .postmark{transition:transform .2s;transform:rotate(-8deg)}.postcard.is-swapping .postmark{transform:rotate(-14deg)}.postcard .words,.postcard .date{transition:opacity .15s}.postcard.is-swapping .words,.postcard.is-swapping .date{opacity:0}@media (prefers-reduced-motion:reduce){.celebrate *,.celebrate :after,.hero-halo{animation:none!important}.celebrate .ring,.celebrate .burst,.celebrate .fall{display:none}.js [data-reveal]{opacity:1;transition:none;transform:none}.phone-sheet{display:none}.postcard{opacity:1;transition:none;transform:rotate(-2.5deg)}.chip,.chip *,.handed,.landed-row,.landed-row .row,.postcard *{transition:none!important}}.today-add{margin-top:20px;position:relative}.today-add.low{height:56px}.today-add-key{position:absolute;right:22px}@media (max-width:63.99em){.today-add-key{display:none}}.today-chips,.today-low{margin-top:16px}.today-chips-label{font:700 .9375rem/1.4 var(--font);color:var(--text-muted);margin-bottom:10px}.one-taps{flex-wrap:wrap;gap:8px;display:flex}.one-tap{color:var(--text);cursor:pointer}.one-tap:hover{border-color:var(--outline)}.one-tap:active{transform:scale(.96)}.one-tap-plus{color:var(--sage-ink)}.one-tap.is-saved{background:var(--calm);border-color:var(--calm);font-weight:800}[data-contrast=high] .one-tap{border:var(--hc-border)}.today-section{font:800 var(--t-section)/1.3 var(--font);margin:28px 0 12px}.win-list{margin:0;padding:0;list-style:none}.win-row{align-items:flex-start}.win-body{flex-direction:column;flex:1;gap:2px;min-width:0;padding-top:2px;display:flex}.win-text{overflow-wrap:anywhere}.win-marker{margin-top:0}.win-row.is-landed{animation:row-in var(--d-standard) var(--ease-out) both}.win-undo{align-self:center;min-height:32px;font-size:.9375rem;font-weight:800}.today-dim{transition:opacity var(--d-standard) var(--ease-app)}.composer{transform-origin:top}.composer-field{width:100%;font-family:var(--font);display:block}.option{display:inline-flex;position:relative}.option-chip{color:var(--text);cursor:pointer;max-width:100%}.option-chip:hover{border-color:var(--outline)}.option .popover{flex-direction:column;max-height:320px;display:flex;top:calc(100% + 6px);left:0;overflow-y:auto}.popover-item{text-align:left;width:100%;color:var(--text);flex:none}.popover-label{flex:1}.composer-close{min-height:44px}.btn-save[disabled]{background:color-mix(in srgb, var(--add-win) 35%, var(--warm));color:var(--text-muted)}.celebration-card{max-width:600px;max-height:420px}.celebration-words{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.celebration-kicker{font:800 .875rem var(--font);color:var(--text-muted)}.celebration-quote{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.celebration-foot{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.celebration-done{height:44px}.celebration-next{font:700 var(--t-caption) var(--font);color:var(--text-muted)}@media (max-width:39.99em){.celebration-card{text-align:center;flex-direction:column;max-height:none}.celebration-foot{justify-content:center}}.today-extras{flex-direction:column;gap:18px;margin-top:28px;display:flex}.postcard{color:var(--text)}.postmark{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex}.postmark-month{font:800 .5625rem var(--font);letter-spacing:.5px;text-transform:uppercase}.postmark-day{font:800 .9375rem var(--font)}.postcard-kicker{font:800 .8125rem var(--font);color:var(--text-muted);padding-right:56px}.postcard-text{font:700 var(--t-postcard)/1.37 var(--font);overflow-wrap:anywhere;margin-top:4px;padding-right:56px}.postcard-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.postcard-date{font:700 var(--t-caption) var(--font);color:var(--text-muted)}.postcard-another{color:var(--text);font-size:.9375rem;font-weight:800}.need-win-card{text-align:left;width:100%;color:var(--text);cursor:pointer}.need-win-sun{background:var(--celebrate);width:44px;height:44px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;display:grid}.need-win-card-text{flex-direction:column;display:flex}.need-win-card-title{font:800 1.0625rem var(--font)}.need-win-card-sub{font:600 var(--t-caption)/1.4 var(--font);color:var(--text-muted)}.dialog.need-win{color:var(--text);gap:16px}.need-win-close{background:var(--surface);color:var(--text);flex:none}.need-win-heading{font:800 var(--t-need-win)/1.23 var(--font);text-wrap:balance}.handed-stack{padding-bottom:14px;position:relative}.handed-edge{border-radius:var(--r-keepsake);background:var(--surface);opacity:.55;position:absolute;inset:20px 16px 0}.handed-card{animation:hand-over .42s var(--spring-soft) both;position:relative}@keyframes hand-over{0%{opacity:0;transform:translateY(40px)rotate(-2deg)}to{opacity:1;transform:none}}.handed-mark{font:800 .875rem var(--font);color:var(--text-muted)}.handed-text{font:800 var(--t-heading)/1.3 var(--font);overflow-wrap:anywhere;margin-top:10px}.handed-date{font:700 var(--t-caption) var(--font);color:var(--text-muted)}.need-win-empty{font:400 var(--t-body)/1.41 var(--font)}.need-win-actions{flex-direction:column;gap:4px;display:flex}.need-win-actions .btn{width:100%}.need-win-actions .btn-text{min-height:48px;color:var(--text)}.support-row{color:var(--text);text-decoration:none}.support-icon{background:var(--calm);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}.support-text{flex-direction:column;flex:1;display:flex}.support-title{font:800 1rem var(--font)}.support-sub{font:600 var(--t-caption) var(--font);color:var(--text-muted)}@media (prefers-reduced-motion:reduce){.handed-card{animation:fade var(--d-calm) linear both}}[data-calm=on] .handed-card{animation:fade var(--d-calm) linear both}.sheet-add{color:var(--text);box-shadow:var(--dialog);flex-direction:column;gap:12px;width:100%;display:flex}.sheet-head{align-items:center;gap:12px;display:flex}.sheet-title{font:800 1.0625rem var(--font)}.sheet-add .composer,.sheet-add .celebration-card{margin-top:0}.sheet-add .composer-field{min-height:120px}.composer.is-drop:after{content:attr(data-drop-label);z-index:3}.thumb-wrap{display:inline-flex;position:relative}.thumb-remove{background:var(--text);width:24px;height:24px;color:var(--background);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;top:-6px;right:-6px}.composer-note{font:700 var(--t-caption)/1.4 var(--font);color:var(--text-muted)}.option-chip[disabled]{opacity:.5;cursor:default}.brand-mark{--mark:30px;width:var(--mark);height:var(--mark);border-radius:calc(var(--mark) * .3);background:var(--calm);border:var(--hc-border);flex:none;display:block;position:relative}.brand-mark-circle{background:#fbf6ee;border-radius:50%;position:absolute;inset:20%}.brand-mark-dot{background:var(--add-win);border-radius:50%;width:26.7%;height:26.7%;position:absolute;top:46.7%;left:46.7%}.skip-link{z-index:200;background:var(--surface);color:var(--text);border-radius:var(--r-pill);border:2px solid var(--text);padding:10px 16px;font-weight:800;text-decoration:none;position:fixed;top:-60px;left:12px}.skip-link:focus{top:12px}.nav-item,.rail-item,.tab{cursor:pointer;text-decoration:none}.sidebar-add{font-size:1.0625rem}.sidebar-add .key{margin-left:2px}.sidebar-hide-label{text-align:left;flex:1}.sidebar-hide .key{padding:2px 6px;font-size:.6875rem}.rail-brand{margin-bottom:14px}.rail-item{padding:4px 0}.rail-item:hover .pill{background:color-mix(in srgb, var(--warm) 55%, transparent)}.rail-hide,.topbar-hide{color:var(--text-muted);background:0 0}.rail-hide:hover,.topbar-hide:hover{background:color-mix(in srgb, var(--warm) 55%, transparent);color:var(--text)}[data-contrast=high] .rail-item[aria-current=page] .pill,[data-contrast=high] .tab[aria-current=page]{box-shadow:inset 0 0 0 2px var(--text)}.account-initial{background:var(--warm);border:var(--hc-border);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:.9375rem;font-weight:800;display:grid}.account-text{flex-direction:column;min-width:0;display:flex}.account-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:800;overflow:hidden}.account-email{font-size:var(--t-caption);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cover{cursor:pointer;font-family:var(--font);color:var(--text);width:100%}.app-content:focus{outline:none}@media (prefers-reduced-motion:reduce){.cover{animation-duration:var(--d-calm)}}.today-date{justify-content:flex-start}.today-add{margin-top:20px}.btn-sunbutton{flex:none;place-items:center;display:grid}.sidebar .sidebar-add{width:100%;height:48px}.rail .rail-add,.app .tab-add{width:56px;height:56px}.signin{background:var(--background)}.signin-art{display:none}@media (min-width:64em){.signin-art{pointer-events:none;display:block;position:absolute;inset:0}.signin-art span{border-radius:50%;position:absolute}.signin-art-sun{background:var(--sun-wash);width:760px;height:760px;bottom:-260px;right:-180px}.signin-art-calm{background:var(--calm);width:480px;height:480px;bottom:-120px;right:-40px}.signin-art-coral{background:var(--add-win);width:120px;height:120px;bottom:60px;right:120px}}.signin-card{box-shadow:var(--e1);border-style:solid;border-width:1px;position:relative}[data-contrast=high] .signin-card{border:var(--hc-border)}.signin-form{flex-direction:column;gap:16px;display:flex}.signin-title{font:800 1.875rem/1.2 var(--font);letter-spacing:-.3px;text-wrap:balance}.signin-body{font:400 var(--t-body)/1.41 var(--font);color:var(--text-muted)}.signin-label{font:800 .9375rem var(--font);flex-direction:column;gap:6px;margin-top:4px;display:flex}.signin .field{color:var(--text)}.signin-keep{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.signin-keep input{width:22px;height:22px;accent-color:var(--toggle-on);flex:none;margin:1px 0 0}.signin-keep-label{font:700 .9375rem/1.4 var(--font);display:block}.signin-keep-note{font:600 var(--t-caption)/1.38 var(--font);color:var(--text-muted);display:block}.signin .btn{width:100%}.signin .btn-tonal{height:56px}.signin-or{color:var(--text-muted);font:700 .875rem var(--font);align-items:center;gap:12px;display:flex}.signin-or span{background:var(--line);flex:1;height:1px}.signin-foot{font:600 .875rem/1.43 var(--font);color:var(--text-muted);text-align:center}.signin-links{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.signin-link{min-height:44px;font:800 .9375rem var(--font);color:var(--sage-ink);text-underline-offset:3px;align-items:center;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;display:inline-flex}.signin-link:hover{text-decoration-color:currentColor}.signin-foot .signin-link{min-height:0;font-size:inherit;text-decoration-color:currentColor;display:inline}.signin-link[disabled]{color:var(--text-muted);cursor:default}.signin-steps{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.signin-steps li{font:400 1rem/1.44 var(--font);gap:12px;display:flex}.signin-step-number{background:var(--calm);width:28px;height:28px;font:800 .875rem var(--font);border-radius:50%;flex:none;place-items:center;display:grid}.code-boxes input{min-width:0;color:var(--text);border:var(--hc-border)}.code-boxes[data-disabled] input{opacity:.45}.notice{align-items:flex-start}.notice-icon{color:var(--danger);flex:none}.foundations{max-width:var(--col);padding:48px var(--margin);gap:20px;margin:0 auto;display:grid}.f-date{font-size:var(--t-callout);color:var(--text-muted);font-weight:700}.f-question{font-size:var(--t-today-wide);letter-spacing:-.3px;font-weight:800;line-height:1.15}.f-add{border-radius:var(--r-pill);background:var(--add-win);min-height:64px;color:var(--on-accent);box-shadow:var(--coral-glow);border:var(--hc-border);justify-content:center;align-items:center;gap:10px;font-size:1.25rem;font-weight:800;display:flex}.f-muted{color:var(--text-muted)}.f-row{flex-wrap:wrap;gap:8px;display:flex}.f-chip{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);min-height:40px;font-size:var(--t-label);padding:0 14px;font-weight:700}.f-chip[aria-pressed=true]{background:var(--calm);font-weight:800}.f-swatches{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.f-swatch{border-radius:var(--r-md);border:1px solid var(--line);min-height:56px;font-size:var(--t-caption);padding:8px;font-weight:600}.f-icons{background:var(--surface);border:1px solid var(--card-line);border-radius:var(--r-card);flex-wrap:wrap;gap:14px;padding:18px;display:flex}.look-back{align-items:flex-start}.lb-head{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.lb-head .page-title{flex:1}.search{color:var(--text);max-width:100%}.search-input{min-width:0;font:600 .9375rem var(--font);color:var(--text);background:0 0;border:0;outline:none;flex:1}.search-input::placeholder{color:var(--text-muted)}.search-input::-webkit-search-cancel-button{display:none}.lb-controls{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.segmented>*{color:var(--text-muted);cursor:pointer}.segmented [aria-checked=true]{color:var(--text)}.filter{color:var(--text);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.filter.is-set{background:var(--calm);border-color:var(--calm);font-weight:800}.lb-controls .popover{flex-direction:column;max-height:360px;display:flex;top:calc(100% + 6px);left:0;overflow-y:auto}.lb-kept{border:1.5px solid var(--line);color:var(--text);background:0 0}.lb-kept.is-set{background:var(--celebrate);border-color:var(--celebrate);color:var(--on-accent)}.letter-row{text-align:left;width:100%;color:var(--text);border:var(--hc-border);cursor:pointer;margin-top:18px}.letter-icon{background:var(--surface);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.letter-row-text{flex-direction:column;flex:1;display:flex}.letter-row-title{font:800 1rem var(--font)}.letter-row-sub{font:600 var(--t-caption) var(--font);color:var(--text-muted)}.lb-period{align-items:center;gap:4px;margin-top:22px;display:flex}.lb-period-title{font:800 var(--t-section)/1.3 var(--font)}.lb-period-sub{font:700 var(--t-caption) var(--font);color:var(--text-muted)}.lb-nav{color:var(--text);background:0 0}.lb-nav:hover{background:var(--warm)}.lb-nav[disabled]{opacity:.35;cursor:default;background:0 0}.lb-group{margin-top:14px}.lb-group-label{font:800 var(--t-caption) var(--font);color:var(--text-muted);margin-bottom:8px}.lb-empty{text-align:center;color:var(--text-muted);font:400 var(--t-body)/1.41 var(--font);margin-top:28px}.lb-empty-title{color:var(--text);font-weight:800}.lb-undo{background:var(--warm);font:700 .9375rem var(--font);border-radius:16px;justify-content:space-between;align-items:center;margin-top:14px;padding:4px 8px 4px 16px;display:flex}.win-row-item{list-style:none}.win-row-item+.win-row-item{border-top:1px solid var(--line)}.win-row-button{text-align:left;width:100%;color:var(--text);cursor:pointer}.win-row-button:hover{background:color-mix(in srgb, var(--warm) 40%, transparent)}.win-row-button.is-kept:hover{background:color-mix(in srgb, var(--keep-wash) 80%, var(--celebrate))}.year-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}@media (max-width:39.99em){.year-grid{grid-template-columns:1fr}}.year-month{font:800 1rem var(--font);padding:14px 18px 4px}.year-see{margin:0 10px 6px;font-size:.9375rem;font-weight:800}.calendar-head{align-items:center;gap:2px;margin-bottom:8px;display:flex}.calendar-title{font:800 1rem var(--font);flex:1}.calendar-nav{width:36px;height:36px;color:var(--text);background:0 0}.calendar-nav:hover{background:var(--warm)}.calendar-nav[disabled]{opacity:.35;cursor:default}.cal-weekday{height:28px;font:800 .75rem var(--font);color:var(--text-muted);place-items:center;display:grid}.cal-day button{color:var(--text);cursor:pointer}.cal-day button[disabled]{color:var(--text-muted);opacity:.45;cursor:default;background:0 0}.calendar-hint{font:600 var(--t-caption)/1.4 var(--font);color:var(--text-muted);margin-top:10px}.win-pane{animation:pane-in var(--d-standard) var(--ease-out) both;flex-direction:column;gap:16px;display:flex}@media (max-width:79.99em){.win-pane{z-index:20;overflow:auto}}@media (max-width:39.99em){.win-pane{padding:16px 20px}}.pane-head{align-items:center;gap:12px;padding-top:4px;display:flex}.pane-title{font:800 1.0625rem var(--font);flex:1}.keepsake-when{font:700 .9375rem var(--font);color:var(--text-muted)}.keepsake-text{overflow-wrap:anywhere;white-space:pre-wrap}.keepsake-chips{flex-wrap:wrap;gap:8px;display:flex}.info-chip{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);min-height:36px;font:700 .9375rem var(--font);align-items:center;padding:0 12px;display:inline-flex}.info-chip.heavy{font-weight:800}.keep-button{height:48px;color:var(--text);align-self:flex-start;padding:0 18px;font-size:1rem}.keep-button.btn-sun{color:var(--on-accent)}.pane-group{margin-top:0}.pane-row{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0}.pane-row:hover{background:color-mix(in srgb, var(--warm) 40%, transparent)}.pane-row-label{font:700 1rem var(--font);flex:1}.pane-row-value{font:600 .9375rem var(--font);color:var(--text-muted)}.pane-choices{flex-wrap:wrap;gap:8px;padding:4px 16px 14px;display:flex}.note-card{text-align:left;background:var(--soft);width:100%;color:var(--text);border:var(--hc-border);border-radius:var(--r-card);cursor:pointer;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.note-card.note-editing{cursor:default}.note-title{font:800 .9375rem var(--font);color:var(--text-muted)}.note-private{font:600 var(--t-caption)/1.4 var(--font);color:var(--text-muted)}.note-text{font:400 var(--t-body)/1.41 var(--font);white-space:pre-wrap;overflow-wrap:anywhere}.pane-textarea{resize:vertical;border-radius:var(--r-md);background:var(--surface);width:100%;min-height:120px;color:var(--text);font:400 var(--t-body)/1.41 var(--font);border:0;padding:12px 14px}.pane-textarea:focus{box-shadow:0 0 0 2px var(--text);outline:none}.keepsake-edit{font:800 1.25rem/1.3 var(--font)}.pane-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pane-save{height:44px}.pane-delete{align-self:center;gap:8px;margin-top:8px}@media (prefers-reduced-motion:reduce){.win-pane{animation:fade var(--d-calm) linear both}}[data-calm=on] .win-pane{animation:fade var(--d-calm) linear both}.dialog.letter{color:var(--text);gap:14px;overflow-y:auto}.letter-close{background:var(--surface);color:var(--text);flex:none}.letter-range{font:800 .9375rem var(--font);color:var(--text-muted)}.letter-title{font:800 var(--t-keepsake)/1.2 var(--font);letter-spacing:-.2px}.letter-notes{flex-direction:column;gap:10px;display:flex}.letter-note{background:var(--surface);border:var(--hc-border);border-radius:var(--r-postcard);padding:14px 18px}.letter-note:nth-child(3n+1){transform:rotate(-.6deg)}.letter-note:nth-child(3n+2){transform:rotate(.5deg)}.letter-note:nth-child(3n){transform:rotate(-.3deg)}[data-contrast=high] .letter-note{transform:none}.letter-day{font:800 var(--t-caption) var(--font);color:var(--text-muted)}.letter-text{font:700 var(--t-postcard)/1.37 var(--font);overflow-wrap:anywhere}.letter-about{font:400 var(--t-body)/1.41 var(--font)}.letter-ending{font:800 var(--t-heading)/1.27 var(--font);align-items:center;gap:12px;display:flex}.letter-see,.letter-done{width:100%;color:var(--text)}.pane-media{flex-direction:column;gap:12px;display:flex}.pane-photos{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pane-photo{display:block;position:relative}.pane-photo-open{aspect-ratio:4/3;border-radius:var(--r-md);background:var(--warm);cursor:zoom-in;width:100%;display:block;overflow:hidden}.pane-photo-open img{object-fit:cover;width:100%;height:100%}.pane-photo-wait{background:var(--warm);width:100%;height:100%;display:block}.voice-note{color:var(--text);border:1px solid var(--card-line)}.voice-play{background:var(--calm);width:40px;height:40px;color:var(--text);flex:none}.voice-label{font:700 .9375rem var(--font)}.dialog.lightbox{background:var(--background);align-items:flex-start;gap:12px;max-width:min(1100px,100vw - 48px);padding:16px}.dialog.lightbox img{border-radius:var(--r-md);align-self:center;max-width:100%;max-height:calc(100dvh - 190px)}.lightbox-close{background:var(--warm);color:var(--text)}.page-intro{font:400 var(--t-body)/1.41 var(--font);color:var(--text-muted);margin-top:10px}.page-section{scroll-margin-top:24px}.page-index a[aria-current=true]{background:var(--warm)}.page-index a:hover{background:color-mix(in srgb, var(--warm) 55%, transparent);color:var(--text)}.row{color:var(--text)}.row-link{text-align:left;cursor:pointer;background:0 0;width:100%;text-decoration:none}.row-text{flex-direction:column;flex:1;min-width:0;display:flex}.row-label{font:700 1rem/1.4 var(--font)}.row-label.danger{color:var(--danger)}.row-sub{font:600 var(--t-caption)/1.4 var(--font);color:var(--text-muted)}.row-value{font:600 .9375rem var(--font);color:var(--text-muted);text-align:right}.row-chevron{color:var(--text-muted);flex:none}.row{flex-wrap:wrap}.switch{cursor:pointer;padding:0}.choices{flex-wrap:wrap;gap:8px;display:flex}.select-chip{color:var(--text);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.select-chip[aria-checked=true]{background:var(--calm);border-color:var(--calm);font-weight:800}.row .choices{justify-content:flex-end}.text-sizes{background:var(--warm);border-radius:var(--r-pill);padding:3px;display:flex}.text-size{border-radius:var(--r-pill);width:52px;height:38px;color:var(--text-muted);cursor:pointer;font-weight:700}.text-size[aria-checked=true]{background:var(--surface);color:var(--text);font-weight:800;box-shadow:0 1px 3px #0000001f}.text-size.size-0{font-size:14px}.text-size.size-1{font-size:17px}.text-size.size-2{font-size:20px}.theme-row{gap:10px}.swatches{gap:12px;display:flex}.swatch{border:1px solid var(--line);cursor:pointer;border-radius:50%;width:44px;height:44px}.swatch[aria-checked=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--text)}.swatch-cream{background:linear-gradient(135deg,#fbf6ee 50%,#fce3d6 50%)}.swatch-sage{background:linear-gradient(135deg,#f3f7f0 50%,#c2d4b8 50%)}.swatch-lavender{background:linear-gradient(135deg,#f6f4fa 50%,#d3cbec 50%)}.swatch-ocean{background:linear-gradient(135deg,#f1f6f8 50%,#dbe9ef 50%)}.swatch-rose{background:linear-gradient(135deg,#faf3f3 50%,#f5dedd 50%)}.confirm-row{gap:10px}.confirm-keep{height:44px}.page-message{font:700 .9375rem var(--font);color:var(--text)}.edit-row{align-items:flex-end;gap:12px}.edit-field{min-width:180px;font:800 .875rem var(--font);flex-direction:column;flex:1;gap:6px;display:flex}.edit-emoji{flex:0 0 150px;min-width:120px}.edit-actions{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.edit-save{height:44px}.edit-note{width:100%}.field{color:var(--text)}.emergency{flex-direction:column;gap:14px;margin-top:20px;display:flex}.emergency-text{font:800 1.0625rem/1.4 var(--font)}.emergency-call{background:var(--text);height:52px;color:var(--background);align-self:flex-start;padding:0 22px;font-size:1.0625rem;text-decoration:none}.helplines{flex-direction:column;gap:10px;margin-top:14px;display:flex}.helpline{background:var(--surface);border:1px solid var(--card-line);border-radius:22px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.helpline-name{font:700 1rem/1.4 var(--font)}.helpline-actions{flex-wrap:wrap;gap:8px;display:flex}.helpline-button{height:44px;color:var(--text);padding:0 18px;font-size:.9375rem;text-decoration:none}.help-search{width:100%;margin-top:18px}.help-item+.help-item{border-top:1px solid var(--line)}.help-answer{font:400 var(--t-body)/1.41 var(--font);padding:0 16px 16px}.contact-field{margin-top:16px}.contact-message{resize:vertical;height:180px;padding:14px 18px;font-weight:400}.contact-send{margin-top:18px}.contact-support{margin-top:14px}
