@font-face{font-family:EB Garamond;font-style:italic;font-weight:400 800;font-display:swap;src:url(/assets/eb-garamond-italic-latin-ext-CYvIfuu9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400 800;font-display:swap;src:url(/assets/eb-garamond-italic-latin-AvGrCMCN.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/eb-garamond-normal-latin-ext-B6IpcvL2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/eb-garamond-normal-latin-CRpggXlh.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(/assets/figtree-normal-latin-ext-DCwSJGxG.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(/assets/figtree-normal-latin-D_ZTVpCC.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#ffffeb;--paper-2:#fbfbe2;--paper-deep:#efefd9;--paper-deeper:#e4e4d0;--sheet:#fffff6;--ink:#1a1a1a;--ink-2:#3d3d38;--ink-muted:#63635c;--ink-soft:#8a8a80;--hair:#1a1a1a1f;--hair-strong:#1a1a1a3d;--scrim:#1a1a0f52;--dawn:#f0d7ff;--dawn-hover:#e8c6ff;--dawn-press:#dfb5fb;--dawn-ink:#1a1a1a;--fathom:#034f46;--fathom-2:#0b6156;--fathom-ink:#ffffeb;--glow:#ffa946;--glow-soft:#ffe2bd;--pulse:#7f1c34;--focus:#2d62ff;--ok:#114e0b;--ok-bg:#cef5ca;--warn:#5e5515;--warn-bg:#fcf8d8;--bad:#7f1c34;--bad-bg:#f8e4e4;--serif:"EB Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--sans:"Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-cap:.8125rem;--fs-sm:.9375rem;--fs-ui:1.0625rem;--fs-lg:1.25rem;--fs-h3:1.5rem;--fs-h2:clamp(1.75rem, 1.4rem + 1.4vw, 2.25rem);--fs-h1:clamp(2.25rem, 1.6rem + 3vw, 3.5rem);--fs-book:clamp(1.25rem, 1.15rem + .35vw, 1.375rem);--r-xs:6px;--r-sm:10px;--r:12px;--r-lg:16px;--r-xl:24px;--r-pill:999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--gutter:20px;--tap:48px;--topbar:64px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--shadow-1:0 1px 2px #1a1a0f0d;--shadow-float:0 12px 28px -10px #1a1a0f2e, 0 4px 10px -4px #1a1a0f14;--shadow-page:0 1px 0 #1a1a0f0a, 0 18px 40px -24px #1a1a0f38;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-emph:cubic-bezier(.2, 0, 0, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.15s;--t:.24s;--t-slow:.32s}@supports (transition-timing-function:linear(0, 1)){:root{--spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017 19.4%, 1.067, 1.099 24.3%, 1.108 26%, 1.104, 1.088 30.3%, 1.007 38%, .985 42%, .98 46%, .991 56%, 1.001 66%, 1)}}@media (min-width:640px){:root{--gutter:32px;--topbar:72px}}@media (min-width:1024px){:root{--gutter:40px}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0d1d1a;--paper-2:#0a1815;--paper-deep:#15302b;--paper-deeper:#1c3a34;--sheet:#112521;--ink:#fbfbe6;--ink-2:#e3e3cf;--ink-muted:#b4b6a4;--ink-soft:#8d917f;--hair:#ffffeb1f;--hair-strong:#ffffeb3d;--scrim:#00000080;--dawn:#e2c2fb;--dawn-hover:#ebd3ff;--dawn-press:#d5aef7;--fathom:#0f6b5f;--fathom-2:#13806f;--fathom-ink:#fbfbe6;--glow-soft:#4a3415;--ok:#bdf0b8;--ok-bg:#173d14;--warn:#f3e9a6;--warn-bg:#3a3612;--bad:#ffc5d2;--bad-bg:#4a1824;--shadow-float:0 12px 28px -10px #0000008c, 0 4px 10px -4px #00000059;--shadow-page:0 18px 40px -24px #000000b3}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--paper);-webkit-tap-highlight-color:transparent}body{background:var(--paper);min-height:100dvh;color:var(--ink);font-family:var(--sans);font-size:var(--fs-ui);font-feature-settings:"kern", "liga";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.5;overflow-x:hidden}html.sheet-open body{overflow:hidden}h1,h2,h3,h4{letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:400}h1,h2{font-family:var(--serif)}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}img,svg{display:block}svg.inline-icon{vertical-align:-3px;display:inline-block}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}::selection{background:var(--dawn);color:var(--dawn-ink)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--ink-muted)}.small{font-size:var(--fs-sm)}.center{text-align:center}.stack-16{gap:var(--s-4);flex-direction:column;display:flex}@media (max-width:1023.98px){.only-wide{display:none!important}}@media (min-width:1024px){.only-narrow{display:none!important}}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--glow) 55%, transparent)}80%,to{box-shadow:0 0 0 10px color-mix(in srgb, var(--glow) 0%, transparent)}}@keyframes breathe{50%{opacity:.45}}::view-transition-old(root){animation:.16s var(--ease) both vt-out}::view-transition-new(root){animation:.24s var(--ease-emph) both vt-in}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.splash{place-items:center;min-height:100dvh;display:grid}.splash .mark{animation:pop .5s var(--spring) both, breathe 1.6s .6s var(--ease) infinite}.btn{border-radius:var(--r);letter-spacing:.005em;white-space:nowrap;min-height:44px;transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), color var(--t-fast) var(--ease);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-lg{min-height:56px;font-size:var(--fs-ui);border-radius:var(--r-lg);padding:0 26px}.btn-sm{min-height:36px;font-size:var(--fs-cap);gap:6px;padding:0 12px}.btn-block{white-space:normal;text-align:center;width:100%}.btn-primary{background:var(--dawn);color:var(--dawn-ink)}.btn-primary:hover:not(:disabled){background:var(--dawn-hover)}.btn-primary:active:not(:disabled){background:var(--dawn-press)}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:var(--ink-2)}.btn-fathom{background:var(--fathom);color:var(--fathom-ink)}.btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 1px var(--hair-strong);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--paper-deep)}.btn-quiet{color:var(--ink-2);background:0 0}.btn-quiet:hover:not(:disabled){background:var(--paper-deep)}.btn-danger{background:var(--bad-bg);color:var(--bad)}.btn-danger:hover:not(:disabled){box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--bad) 35%, transparent)}a.btn.google{gap:12px}.iconbtn{width:var(--tap);height:var(--tap);border-radius:var(--r-pill);color:var(--ink);transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);flex:none;place-items:center;display:inline-grid}.iconbtn:hover{background:var(--paper-deep)}.iconbtn:active{transform:scale(.92)}.iconbtn.danger{color:var(--bad)}.avatar{--av:36px;width:var(--av);height:var(--av);background:var(--soft,var(--paper-deep));color:var(--ink,var(--ink));font-weight:700;font-size:calc(var(--av) * .38);letter-spacing:.02em;transition:transform var(--t) var(--spring);border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar.has-ring{box-shadow:0 0 0 2.5px var(--paper)}.avatar.is-live:after{content:"";width:max(9px, calc(var(--av) * .28));height:max(9px, calc(var(--av) * .28));box-shadow:0 0 0 2px var(--paper);animation:pop .4s var(--spring) both;background:#2fb36d;border-radius:50%;position:absolute;bottom:-1px;right:-1px}.avatar.is-writing{animation:pulse-ring 1.8s var(--ease-out) infinite}.avatar.is-writing:after{background:var(--glow)}.stack{align-items:center;padding-left:8px;display:inline-flex}.stack>.avatar{animation:pop .42s var(--spring) both;margin-left:-8px}.stack-more{background:var(--paper-deep);color:var(--ink-2);font-size:calc(var(--av) * .34)}.field{flex-direction:column;gap:8px;display:flex}.field-label{font-weight:600;font-size:var(--fs-sm);color:var(--ink-2)}.field-hint{font-size:var(--fs-cap);color:var(--ink-muted)}.input{border-radius:var(--r);background:var(--sheet);border:1px solid var(--hair-strong);width:100%;min-height:52px;font-size:var(--fs-ui);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);padding:12px 16px}.input:focus{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 18%, transparent);outline:none}textarea.input{resize:none;line-height:1.45}.input-serif{font-family:var(--serif);font-size:1.375rem}.switch-row{cursor:pointer;align-items:center;gap:14px;min-height:60px;padding:8px 0;display:flex;position:relative}.switch-row+.switch-row{border-top:1px solid var(--hair)}.switch-row.is-disabled{opacity:.5;pointer-events:none}.switch-row input{opacity:0;width:1px;height:1px;position:absolute}.row-icon{border-radius:var(--r);background:var(--paper-deep);width:40px;height:40px;color:var(--ink-2);flex:none;place-items:center;display:grid}.switch-text{flex-direction:column;flex:1;min-width:0;display:flex}.switch-label{font-weight:600}.switch-hint{font-size:var(--fs-sm);color:var(--ink-muted)}.switch{border-radius:var(--r-pill);background:var(--paper-deeper);width:52px;height:32px;transition:background var(--t) var(--ease);flex:none;position:relative}.switch:after{content:"";width:26px;height:26px;transition:transform var(--t) var(--spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch-row input:checked+.switch{background:var(--fathom)}.switch-row input:checked+.switch:after{transform:translate(20px)}.switch-row input:focus-visible+.switch{outline:2px solid var(--focus);outline-offset:2px}.chip{border-radius:var(--r-pill);background:var(--paper-deep);min-height:40px;font-weight:600;font-size:var(--fs-sm);align-items:center;gap:6px;padding:0 16px;display:inline-flex}.chip-pick{box-shadow:inset 0 0 0 1px var(--hair);transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--spring)}.chip-pick:hover{background:var(--paper-deeper)}.chip-pick.on{background:var(--dawn);color:var(--dawn-ink);box-shadow:none}.chip-pick:active{transform:scale(.95)}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.sheet-layer{z-index:50;background:var(--scrim);animation:fade-in var(--t) var(--ease) both;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet-layer.leaving{animation:fade-out .2s var(--ease) both}.sheet{background:var(--sheet);border-radius:var(--r-xl) var(--r-xl) 0 0;width:100%;max-height:min(92dvh,100% - 24px);box-shadow:var(--shadow-float);padding-bottom:var(--safe-b);animation:sheet-up .42s var(--spring) both;flex-direction:column;display:flex}.sheet-layer.leaving .sheet{animation:sheet-down .2s var(--ease) both}.sheet-grip{background:var(--hair-strong);border-radius:3px;flex:none;width:40px;height:5px;margin:10px auto 0}.sheet-head{padding:8px 12px 8px var(--gutter);flex:none;align-items:center;gap:12px;display:flex}.sheet-head h2{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:1.625rem;line-height:1.2;overflow:hidden}.sheet-icon{border-radius:var(--r);background:var(--dawn);flex:none;place-items:center;width:40px;height:40px;display:grid}.sheet-body{overscroll-behavior:contain;padding:8px var(--gutter) 24px;flex-direction:column;gap:16px;display:flex;overflow-y:auto}.sheet-foot{padding:12px var(--gutter);border-top:1px solid var(--hair)}@media (min-width:640px){.sheet-layer{align-items:center;padding:24px}.sheet{border-radius:var(--r-xl);max-width:520px;max-height:min(86dvh,760px);animation:dialog-in .38s var(--spring) both}.sheet-layer.leaving .sheet{animation:dialog-out .18s var(--ease) both}.sheet-wide{max-width:720px}.sheet-grip{display:none}.sheet-head{padding-top:16px}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-down{to{transform:translateY(100%)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}@keyframes dialog-out{to{opacity:0;transform:scale(.97)}}.row-actions{flex-wrap:wrap;gap:12px;display:flex}.row-actions>.btn{flex:140px}.row-actions-tight{flex-wrap:wrap;gap:4px;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.prose-ui p+p{margin-top:10px}.toasts{top:calc(var(--safe-t) + 12px);z-index:70;pointer-events:none;padding:0 var(--gutter);flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:0;right:0}.toast{pointer-events:auto;border-radius:var(--r-lg);background:var(--ink);max-width:min(520px,100%);min-height:52px;color:var(--paper);box-shadow:var(--shadow-float);font-weight:500;font-size:var(--fs-sm);animation:toast-in .52s var(--spring) both;align-items:center;gap:12px;padding:8px 10px;display:flex}.toast-icon{background:color-mix(in srgb, var(--paper) 14%, transparent);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.toast-good .toast-icon{background:var(--ok-bg);color:var(--ok)}.toast-warn .toast-icon,.toast-bad .toast-icon{background:var(--glow);color:var(--ink)}.toast-live{background:var(--ink);color:#fffff6}.toast-live .toast-icon{background:var(--soft);color:var(--ink);animation:wiggle .9s .2s var(--ease) both}[data-theme=dark] .toast-live .toast-icon{color:#1a1a1a}.toast-text{flex:1;padding-right:6px;line-height:1.35}.toast-action{border-radius:var(--r);background:var(--dawn);min-height:40px;color:var(--dawn-ink);flex:none;padding:0 14px;font-weight:700}@keyframes toast-in{0%{opacity:0;transform:translateY(-24px)scale(.92)}}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-14deg)scale(1.1)}45%{transform:rotate(10deg)}70%{transform:rotate(-5deg)}}.notice{border-radius:var(--r-lg);background:var(--paper-deep);flex-wrap:wrap;align-items:flex-start;gap:12px;padding:14px 16px;line-height:1.45;display:flex}.notice>svg{flex:none;margin-top:2px}.notice-text{flex:200px}.notice-warn{background:var(--warn-bg);color:var(--warn)}.notice-bad{background:var(--bad-bg);color:var(--bad)}.notice-good{background:var(--ok-bg);color:var(--ok)}.notice-dawn{background:var(--dawn);color:var(--dawn-ink)}.empty{text-align:center;padding:48px var(--gutter);max-width:460px;animation:rise .5s var(--ease-emph) both;flex-direction:column;align-items:center;gap:14px;margin:0 auto;display:flex}.empty-art{color:var(--dawn-ink);background:var(--dawn);width:84px;height:84px;animation:pop .6s var(--spring) both;border-radius:28px;place-items:center;display:grid;transform:rotate(-6deg)}.empty h2{font-size:var(--fs-h3);font-size:1.75rem}.empty p{color:var(--ink-muted)}.empty .btn{margin-top:8px}.center-fill{color:var(--ink-muted);place-items:center;padding:64px 0;display:grid}.confetti{pointer-events:none;z-index:80;position:fixed;inset:0;overflow:hidden}.confetti i{border-radius:2px;width:9px;height:14px;position:absolute}.toast{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;will-change:transform}.toast:active{cursor:grabbing}.page{flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:20;min-height:calc(var(--topbar) + var(--safe-t));padding:var(--safe-t) calc(var(--gutter) - 8px) 0;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid #0000;align-items:center;gap:8px;display:flex;position:sticky;top:0}.topbar-title{text-align:center;flex:1;font-size:1.5rem}.topbar-spacer{width:var(--tap)}.topbar-end{align-items:center;gap:12px;margin-left:auto;display:flex}.brand{align-items:center;gap:10px;padding:4px 8px;text-decoration:none;display:inline-flex}.wordmark{font-family:var(--serif);letter-spacing:-.02em;font-style:italic;font-weight:500;line-height:1}.me-btn{border-radius:50%;padding:4px;position:relative}.me-cog{background:var(--paper);border-radius:50%;width:20px;height:20px;padding:2px;position:absolute;bottom:-2px;right:-2px}.welcome{min-height:100dvh;padding:calc(var(--safe-t) + 20px) var(--gutter) calc(var(--safe-b) + 28px);grid-template-columns:1fr;grid-template-areas:"top""art""copy""cta";align-content:start;gap:8px;max-width:560px;margin:0 auto;display:grid}.welcome-top{grid-area:top;align-items:center;gap:10px;display:flex}.welcome-art{grid-area:art;margin:8px -8px 0}.pages-art{width:100%;height:auto;max-height:34dvh}.pa-page{transform-box:fill-box;transform-origin:50%;animation:pop .7s var(--spring) both}.pa-1{--r:-6deg;animation-delay:80ms}.pa-2{animation-delay:.18s}.pa-3{animation-delay:.28s}.pa-pen{animation:pen-write 2.6s .9s var(--ease) infinite}.pa-typing{stroke-dasharray:30;animation:typing 2.6s .9s var(--ease) infinite}.pa-spark{transform-box:fill-box;transform-origin:50%;animation:breathe 2.4s var(--ease) infinite}@keyframes pen-write{0%,to{transform:translate(206px,112px)rotate(35deg)}50%{transform:translate(226px,112px)rotate(28deg)}}@keyframes typing{0%{stroke-dashoffset:30px}50%,to{stroke-dashoffset:0}}.welcome-copy{animation:rise .6s .2s var(--ease-emph) both;flex-direction:column;grid-area:copy;gap:12px;display:flex}.welcome-copy h1{font-size:var(--fs-h1);letter-spacing:-.02em;line-height:1.04}.lede{font-size:var(--fs-lg);color:var(--ink-2);line-height:1.45}.welcome-cta{animation:rise .6s .32s var(--ease-emph) both;flex-direction:column;grid-area:cta;gap:16px;margin-top:16px;display:flex}.promises{color:var(--ink-muted);font-size:var(--fs-sm);flex-direction:column;gap:10px;display:flex}.promises li{align-items:flex-start;gap:10px;display:flex}.promises svg{color:var(--fathom);flex:none;margin-top:2px}[data-theme=dark] .promises svg{color:var(--glow)}.dev-signin{border-radius:var(--r-lg);border:1px dashed var(--hair-strong);color:var(--ink-muted);align-items:center;gap:8px;padding:8px;display:flex}.dev-signin .input{min-height:44px}@media (min-width:1024px){.welcome{grid-template:"top top""art copy"1fr"art cta""art."1fr/1.05fr 1fr;align-content:stretch;align-items:end;column-gap:64px;max-width:1180px;min-height:100dvh}.welcome-art{align-self:center}.pages-art{max-height:60dvh}.welcome-cta{align-self:start;max-width:440px}}.home-main{width:100%;max-width:1180px;padding:8px var(--gutter) calc(var(--safe-b) + 120px);flex-direction:column;gap:28px;margin:0 auto;display:flex}.hello{animation:rise .5s var(--ease-emph) both;flex-direction:column;gap:14px;display:flex}.hello h1{font-size:var(--fs-h1);letter-spacing:-.02em;line-height:1.04}.streak-pill{border-radius:var(--r-lg);background:var(--paper-deep);grid-template-columns:auto auto 1fr;grid-template-areas:"flame n bar""flame today today";align-items:center;gap:2px 12px;max-width:420px;padding:12px 16px;display:grid}.streak-flame{background:var(--paper-deeper);width:44px;height:44px;color:var(--ink-soft);border-radius:50%;grid-area:flame;place-items:center;display:grid}.streak-flame.lit{background:var(--glow);color:var(--ink);animation:flame 2.4s var(--ease) infinite}@keyframes flame{50%{transform:scale(1.06)rotate(-4deg)}}.streak-n{grid-area:n;font-weight:700}.streak-bar{background:var(--paper-deeper);border-radius:4px;grid-area:bar;height:8px;overflow:hidden}.streak-bar span{background:var(--fathom);transform-origin:0;height:100%;transition:transform .8s var(--spring);border-radius:4px;display:block}.streak-today{font-size:var(--fs-cap);color:var(--ink-muted);grid-area:today}.section-title{font-family:var(--sans);font-size:var(--fs-cap);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:14px;font-weight:700}.shelf{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:640px){.shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.shelf{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}.tile-wrap{animation:rise .52s calc(var(--i) * 60ms) var(--ease-emph) both}.tile{border-radius:var(--r-lg);background:var(--sheet);min-height:188px;box-shadow:inset 0 0 0 1px var(--hair);transition:transform var(--t) var(--spring), box-shadow var(--t) var(--ease);grid-template:"spine body"1fr"spine foot"/14px 1fr;text-decoration:none;display:grid;position:relative;overflow:hidden}.tile:hover{box-shadow:inset 0 0 0 1px var(--hair-strong), var(--shadow-float);transform:translateY(-3px)}.tile:active{transform:scale(.985)}.tile-spine{background:var(--soft);border-right:1px solid var(--hair);grid-area:spine}.tile-live .tile-spine{background:linear-gradient(180deg, var(--soft), var(--glow));animation:spine 2.4s var(--ease) infinite alternate;background-size:100% 200%}@keyframes spine{to{background-position:0 100%}}.tile-body{flex-direction:column;grid-area:body;gap:6px;min-width:0;padding:18px 18px 8px;display:flex}.tile-title{font-family:var(--serif);letter-spacing:-.01em;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.625rem;line-height:1.12;display:-webkit-box;overflow:hidden}.tile-meta{font-size:var(--fs-cap);color:var(--ink-muted)}.tile-status{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.tile-foot{grid-area:foot;padding:8px 18px 16px}.live-chip,.new-chip,.free-chip{border-radius:var(--r-pill);min-height:32px;font-size:var(--fs-cap);align-items:center;gap:8px;padding:0 12px;font-weight:700;display:inline-flex}.live-chip{background:var(--glow-soft);color:var(--ink)}.live-chip.small{min-height:24px;padding:0 8px}.live-dot{background:var(--glow);width:8px;height:8px;animation:pulse-ring 1.6s var(--ease-out) infinite;border-radius:50%}.new-chip{background:var(--dawn);color:var(--dawn-ink)}.free-chip{background:var(--paper-deep);color:var(--ink-2)}.mini-streak{font-size:var(--fs-cap);color:var(--ink-muted);align-items:center;gap:3px;font-weight:700;display:inline-flex}.fab{right:var(--gutter);bottom:calc(var(--safe-b) + 20px);z-index:15;border-radius:var(--r-pill);background:var(--ink);min-height:60px;color:var(--paper);font-weight:700;font-size:var(--fs-ui);box-shadow:var(--shadow-float);animation:pop .5s .3s var(--spring) both;transition:transform var(--t-fast) var(--spring);align-items:center;gap:10px;padding:0 24px 0 20px;display:inline-flex;position:fixed}.fab:active{transform:scale(.95)}.onboard{gap:12px;display:grid}.ob-card{border-radius:var(--r-lg);background:var(--fathom);color:var(--fathom-ink);animation:rise .52s .12s var(--ease-emph) both;align-items:flex-start;gap:14px;padding:18px;display:flex}.ob-icon{background:var(--glow);color:#1a1a1a;width:48px;height:48px;animation:wiggle 1.2s .7s var(--ease) both;border-radius:14px;flex:none;place-items:center;display:grid}.ob-body .btn{white-space:normal;text-align:left;min-height:48px;padding-block:8px}.ob-body{flex-direction:column;flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.ob-body h3{font-family:var(--serif);font-size:1.5rem;line-height:1.15}.ob-body p{color:color-mix(in srgb, var(--fathom-ink) 82%, transparent)}.ob-x{color:var(--fathom-ink);margin:-8px -8px 0 0}.ob-x:hover{background:color-mix(in srgb, var(--fathom-ink) 12%, transparent)}.ob-card .chip-pick{background:color-mix(in srgb, var(--fathom-ink) 14%, transparent);color:var(--fathom-ink);box-shadow:none}.steps{flex-direction:column;gap:14px;display:flex}.steps li{align-items:flex-start;gap:14px;line-height:1.45;display:flex}.step-n{background:var(--dawn);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.join{max-width:560px;min-height:100dvh;padding:calc(var(--safe-t) + 20px) var(--gutter) calc(var(--safe-b) + 28px);flex-direction:column;gap:24px;margin:0 auto;display:flex}.join-card{flex-direction:column;flex:1;justify-content:center;display:flex}.join-preview{animation:rise .52s var(--ease-emph) both;flex-direction:column;gap:18px;display:flex}.eyebrow{color:var(--ink-2);align-items:center;gap:10px;font-weight:600;display:inline-flex}.join-title{font-size:var(--fs-h1);letter-spacing:-.02em;line-height:1.04}.join-meta{color:var(--ink-muted);flex-wrap:wrap;gap:16px;display:flex}.join-meta span{align-items:center;gap:8px;display:inline-flex}.join-how{border-radius:var(--r-lg);background:var(--paper-deep);padding:16px;line-height:1.5}.settings-main{width:100%;max-width:640px;padding:8px var(--gutter) calc(var(--safe-b) + 48px);flex-direction:column;gap:24px;margin:0 auto;display:flex}.profile{align-items:center;gap:16px;display:flex}.profile h2{font-size:1.75rem;line-height:1.15}.group{flex-direction:column;gap:10px;display:flex}.group-title{font-family:var(--sans);font-size:var(--fs-cap);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);align-items:center;gap:8px;font-weight:700;display:flex}.group-body{border-radius:var(--r-lg);background:var(--sheet);box-shadow:inset 0 0 0 1px var(--hair);flex-direction:column;gap:12px;padding:16px;display:flex}.ok-line{color:var(--ok);align-items:center;gap:8px;font-weight:600;display:inline-flex}.time-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.days{justify-content:space-between;gap:6px;display:flex}.day{aspect-ratio:1;background:var(--paper-deep);max-width:52px;transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--spring);border-radius:50%;flex:1;font-weight:700}.day.on{background:var(--fathom);color:var(--fathom-ink)}.day:active{transform:scale(.9)}.goal{flex-wrap:wrap;gap:8px;display:flex}.segmented{border-radius:var(--r-lg);background:var(--paper-deep);grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.segmented button{border-radius:var(--r);font-weight:600;font-size:var(--fs-sm);color:var(--ink-2);transition:background var(--t-fast) var(--ease);flex-direction:column;align-items:center;gap:4px;padding:10px 4px;display:flex}.segmented button.on{background:var(--sheet);color:var(--ink);box-shadow:var(--shadow-1), inset 0 0 0 1px var(--hair)}@media (min-width:1240px){.home .topbar{padding-inline:calc((100vw - 1180px) / 2 + var(--gutter) - 8px)}}.legal{width:100%;max-width:680px;padding:16px var(--gutter) calc(var(--safe-b) + 48px);margin:0 auto;line-height:1.6}.legal article{flex-direction:column;gap:14px;display:flex}.legal h1{font-size:var(--fs-h1);line-height:1.05}.legal h2{margin-top:12px;font-size:1.5rem}.legal ul{flex-direction:column;gap:8px;padding-left:1.2em;list-style:outside;display:flex}
