:root{--bg:#f7f2e9;--surface:#efe8da;--card:#f3ecdf;--sheet:#fcf8ef;--ink:#221d16;--body2:#473e30;--muted:#5f5747;--accent:#b4642d;--accent-text-safe:#8a5a1b;--cta:#a55a24;--record-done:#b4642d;--record-done-num:#a55a24;--record-missed:#e2dacb;--missed-line:#857a66;--today-ring:#221d16;--hairline:#221d1626;--control-line:#221d168c;--ghost:#e5dac5;--ghost-band:#dfd2b9;--dawn-bg:#1d1713;--dawn-ink:#f0e7d8;--amber:#d89a55;--amber-peak:#e9c08c;--amber-ink:#2a1a09;--up-word:#91897f;--dawn-muted:#b5a78f;--hero-grad-a:#191410;--hero-grad-b:#241b14;--radius:26px;--radius-pill:999px;--font-serif:"Newsreader", georgia, "Times New Roman", serif;--font-sans:"IBM Plex Sans", system-ui, "Segoe UI", arial, sans-serif;--text-body:19px;--lh-body:1.6;--text-ui:16px;--lh-ui:1.55;--dur-cap:.3s;--dur-sheet:.24s;--dur-enter:.26s;--dur-dawn:.6s;--cascade-word:.105s;--cascade-burst:.63s;--drift-loop:6.5s}.register-dawn{background:var(--dawn-bg);color:var(--dawn-ink);--hairline:#f0e7d866}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-var-latin.woff2)format("woff2");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-italic-var-latin.woff2)format("woff2");font-weight:200 800;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/plex-sans-var-latin.woff2)format("woff2");font-weight:100 700;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box}html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-ui);line-height:var(--lh-ui);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,blockquote{font-family:var(--font-serif);margin:0}p{margin:0}a{color:var(--accent-text-safe)}button{font-family:var(--font-sans);cursor:pointer}.tnum,time,[data-counter]{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--accent-text-safe);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
