:root{color:#1c2822;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#1c2822;--muted:#737e76;--line:#dce4dc;--green:#315f49;--lime:#d8ed83;--coral:#cf634c;--mono:"DM Mono", monospace;--serif:"Fraunces", Georgia, serif;background:#f4f7f2;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background-color:#f4f7f2;background-image:radial-gradient(#dfe7df .65px,#0000 .65px);background-size:18px 18px;min-width:320px;min-height:100vh;margin:0}button,textarea{font:inherit}button{cursor:pointer}button:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #cf634c}.auth-screen,.journal-screen,.setup-screen{width:min(1120px,100% - 64px);min-height:100vh;margin:0 auto}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;display:flex}.private-label,.entry-item time,.comment-label{font-family:var(--mono);letter-spacing:0;font-size:10px}.private-label{color:var(--muted)}.topbar-right{align-items:center;gap:22px;display:flex}.welcome{width:min(680px,100%);padding:clamp(100px,18vh,180px) 0 120px;animation:.5s ease-out both rise-in}h1{color:var(--ink);font-family:var(--serif);margin:0;font-size:68px;font-weight:500;line-height:1.04}.welcome-copy,.composer-copy{max-width:420px;color:var(--muted);margin:22px 0 0;font-size:15px;line-height:1.7}.auth-actions{align-items:center;gap:22px;margin-top:34px;display:flex}.journal-layout{grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:clamp(48px,8vw,112px);padding:72px 0 100px;display:grid}.composer-section{min-width:0}.composer-section h1{font-size:56px}.composer-copy{margin-top:15px;font-size:14px}.privacy-note{color:var(--muted);align-items:center;gap:8px;margin:18px 0 0;font-size:11px;display:flex}.privacy-note span{color:#719c62;font-size:8px}.error-message{color:#a74434;margin:14px 0 0;font-size:13px}.entries-section{border-left:1px solid var(--line);min-width:0;padding-left:34px}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding-bottom:15px;display:flex}.section-heading h2{font-family:var(--serif);margin:0;font-size:25px;font-weight:500}.section-heading span{color:var(--muted);font-family:var(--mono);font-size:10px}.empty-state{color:#879188;margin:23px 0;font-size:13px}.entry-list{margin:0;padding:0;list-style:none}.entry-item{border-bottom:1px solid var(--line);padding:22px 0 24px;animation:.35s ease-out both rise-in}.entry-item time{color:#89948b}.entry-text{color:#38463d;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0;font-size:14px;line-height:1.7}.comment-text{color:#536c58;font-family:var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;border-left:2px solid #8eaa79;margin:17px 0 0;padding:0 0 0 14px;font-size:16px;line-height:1.55}.comment-label{color:var(--green);font-family:var(--mono);margin-bottom:7px;font-size:9px;font-style:normal;display:block}.stream-cursor{vertical-align:-2px;background:var(--coral);width:2px;height:1em;margin-left:3px;animation:.8s steps(2,start) infinite blink;display:inline-block}.typing-indicator{color:var(--coral);font-family:var(--mono);font-size:20px;animation:.8s steps(2,start) infinite blink}.setup-screen{padding-top:18vh}.setup-screen h1{max-width:650px;font-size:58px}.setup-copy{max-width:560px;color:var(--muted);margin-top:20px;line-height:1.7}.setup-copy code{color:var(--green);font-family:var(--mono);font-size:12px}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{to{visibility:hidden}}@media (width<=760px){.auth-screen,.journal-screen,.setup-screen{width:min(100% - 40px,600px)}.topbar{height:70px}.private-label{font-size:9px}.welcome{padding:100px 0 90px}.welcome h1{font-size:56px}.journal-layout{grid-template-columns:1fr;gap:48px;padding:54px 0 72px}.composer-section h1{font-size:48px}.entries-section{border:0;padding:0}.ui-page-mark{padding-bottom:18px}}@media (width<=420px){.auth-screen,.journal-screen,.setup-screen{width:calc(100% - 32px)}.topbar-right{gap:12px}.welcome h1{font-size:48px}.composer-section h1{font-size:42px}.auth-actions{flex-direction:column;align-items:flex-start;gap:10px}.ui-entry-form{padding:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--ui-ink:#1c2822;--ui-muted:#737e76;--ui-line:#dce4dc;--ui-green:#315f49;--ui-coral:#cf634c;--ui-mono:"DM Mono", monospace}.ui-wordmark{color:var(--ui-ink);letter-spacing:0;font-size:17px;font-weight:700;text-decoration:none}.ui-wordmark span{color:var(--ui-coral)}.ui-eyebrow,.ui-page-mark,.ui-character-count{font-family:var(--ui-mono);letter-spacing:0;font-size:10px}.ui-eyebrow{color:var(--ui-green);margin:0 0 22px}.ui-primary-button,.ui-text-button{font:inherit;cursor:pointer}.ui-primary-button{border:1px solid var(--ui-green);background:var(--ui-green);color:#fff;border-radius:2px;justify-content:center;align-items:center;gap:22px;min-height:48px;padding:0 19px;font-size:13px;font-weight:600;transition:background .15s,color .15s,transform .15s;display:inline-flex}.ui-primary-button:hover:not(:disabled){background:#244b38;transform:translateY(-1px)}.ui-primary-button:disabled{cursor:not-allowed;opacity:.48}.ui-text-button{color:var(--ui-green);background:0 0;border:0;padding:10px 0;font-size:13px;font-weight:600}.ui-page-mark{color:#8b968e;padding:22px 0}.ui-entry-form{background:#fff;border:1px solid #d9e2d9;border-radius:2px;margin-top:32px;padding:17px 18px 14px;box-shadow:0 10px 30px #273a2910}.ui-entry-form textarea{resize:vertical;width:100%;min-height:190px;color:var(--ui-ink);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:15px;line-height:1.75}.ui-entry-form textarea::placeholder{color:#a0aaa2}.ui-entry-form textarea:focus-visible{outline:0}.ui-form-footer{border-top:1px solid #edf0ec;justify-content:space-between;align-items:center;gap:12px;padding-top:13px;display:flex}.ui-character-count{color:#9aa39c}.ui-form-footer .ui-primary-button{min-height:40px;padding:0 14px}.ui-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=420px){.ui-entry-form{padding:14px}}
