:root{font-family:DM Sans,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:#33352f;background:#f6f5f0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--paper: #fbfaf7;--canvas: #f6f5f0;--ink: #33352f;--muted: #96958d;--soft: #c4c2b8;--line: #e9e7df;--green: #718b64;--green-dark: #536b48;--green-pale: #e7ede2;--sidebar: #eeede7;--serif: "Noto Serif SC", "Songti SC", "SimSun", serif}*{box-sizing:border-box}body{min-width:780px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #8ba17c;outline-offset:2px}.app-shell{display:flex;width:100%;min-height:100vh;background:var(--paper)}.sidebar{display:flex;position:fixed;z-index:3;inset:0 auto 0 0;flex-direction:column;width:238px;padding:31px 21px 22px;background:var(--sidebar);border-right:1px solid #e6e4dc}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 8px}.brand-symbol,.auth-mark,.boot-mark{display:grid;place-items:center;color:var(--green-dark);background:#e1e6db;border-radius:50%}.brand-symbol{width:37px;height:37px}.sidebar-brand strong{display:block;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:.08em}.sidebar-brand span{display:block;margin-top:2px;color:#98968d;font-size:8px;font-weight:600;letter-spacing:.16em}.sidebar-rule{height:1px;margin:28px 6px 27px;background:#deddd5}.nav-caption{margin:0 10px 12px;color:#a3a097;font-size:10px;letter-spacing:.13em}.main-nav{display:grid;gap:5px}.nav-item{display:flex;position:relative;align-items:center;gap:12px;width:100%;height:43px;padding:0 12px;color:#77766f;text-align:left;background:transparent;border:0;border-radius:7px;cursor:pointer;transition:background .16s ease,color .16s ease}.nav-item span:not(.nav-indicator){font-size:13px}.nav-item:hover{background:#e8e7df;color:var(--ink)}.nav-item.active{color:#4e6446;background:#e1e7db}.nav-indicator{position:absolute;top:12px;right:10px;width:5px;height:19px;background:#718b64;border-radius:5px}.sidebar-bottom{margin-top:auto}.sidebar-quote{padding:21px 13px 19px;border-top:1px solid #dddbd3}.sidebar-quote>span{color:#829578;font-family:Georgia,serif;font-size:35px;line-height:.8}.sidebar-quote p{margin:8px 0 9px;color:#68695f;font-family:var(--serif);font-size:13px;line-height:1.9}.sidebar-quote small{color:#a09e95;font-size:10px}.lock-button{display:flex;align-items:center;gap:9px;width:100%;padding:11px 12px;color:#79776e;font-size:12px;background:transparent;border:0;border-radius:6px;cursor:pointer}.lock-button:hover{background:#e5e4dc;color:var(--ink)}.local-badge{display:flex;align-items:center;gap:7px;margin:14px 12px 0;color:#a1a097;font-size:10px}.local-badge span{width:6px;height:6px;background:#87a078;border-radius:50%}.workspace{min-width:0;width:calc(100% - 238px);margin-left:238px}.topbar{display:flex;position:sticky;z-index:2;top:0;align-items:center;justify-content:space-between;height:61px;padding:0 45px;background:#fbfaf7eb;border-bottom:1px solid #efede7;backdrop-filter:blur(12px)}.breadcrumb{color:#96948c;font-size:11px;letter-spacing:.02em}.breadcrumb span{padding:0 8px;color:#d0cec5}.save-indicator{display:inline-flex;align-items:center;gap:6px;color:#99978e;font-size:11px}.save-saved svg{color:#839b76}.save-editing{color:#9b8c66}.save-saving{color:#768c69}.save-error{color:#bb6d5f}.page-scroll{min-height:calc(100vh - 61px);padding:42px 50px 84px}.diary-page,.history-page,.settings-page{width:min(100%,830px);margin:0 auto}.date-eyebrow{display:flex;align-items:center;gap:9px;color:#87867e;font-size:11px;letter-spacing:.06em}.eyebrow-line{display:inline-block;width:18px;height:1px;background:#8b9c7c}.eyebrow-dot{color:#c1beb4}.diary-heading{display:flex;align-items:baseline;gap:11px;margin-top:15px}.diary-heading h1,.history-title-row h1,.settings-page>h1{margin:0;color:#33342e;font-family:var(--serif);font-size:31px;font-weight:500;letter-spacing:.015em}.title-separator{color:#b9b4a6;font-family:var(--serif);font-size:24px}.title-input{width:min(390px,48%);padding:0 0 4px;color:#5d5e55;font-family:var(--serif);font-size:21px;background:transparent;border:0;border-bottom:1px solid transparent}.title-input:focus{outline:none;border-bottom-color:#d8d9cf}.title-input::placeholder{color:#c4c1b7}.delete-entry-button{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;color:#a1786e;font-size:10px;white-space:nowrap;background:transparent;border:1px solid #eee7e2;border-radius:5px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.delete-entry-button:hover{color:#995f53;background:#f8f1ed;border-color:#e8d7cf}.delete-entry-button:focus-visible,.danger-button:focus-visible{outline:2px solid #b8887b;outline-offset:2px}.page-intro{margin:11px 0 0;color:#9a988f;font-size:12px;letter-spacing:.015em}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:43px 0 15px}.section-heading>div{display:flex;align-items:center;gap:12px}.section-index{color:#8ba07f;font-family:Georgia,serif;font-size:11px;letter-spacing:.08em}.section-heading h2{margin:0;color:#45463f;font-family:var(--serif);font-size:17px;font-weight:500;letter-spacing:.03em}.completion-count,.section-aside{color:#aaa79d;font-size:10px}.prompts-list{display:grid;gap:10px}.prompt-card{display:grid;grid-template-columns:39px minmax(0,1fr);gap:8px;padding:18px 21px 15px;background:#fff;border:1px solid #eeece5;border-radius:7px;transition:border-color .18s ease,box-shadow .18s ease}.prompt-card:focus-within{border-color:#d2d9ca;box-shadow:0 3px 16px #3f453609}.prompt-number{padding-top:2px;color:#a3aa98;font-family:Georgia,serif;font-size:11px;letter-spacing:.04em}.prompt-body label{display:block;color:#45463f;font-family:var(--serif);font-size:14px;line-height:1.6}.prompt-body textarea{display:block;width:100%;min-height:40px;margin-top:7px;padding:2px 0 0;color:#65665d;font-family:var(--serif);font-size:13px;line-height:1.85;resize:vertical;background:transparent;border:0;outline:0}.prompt-body textarea::placeholder{color:#c8c6bd}.prompt-body textarea:focus-visible{outline:0}.takeaway-heading{margin-top:41px}.rich-editor{overflow:hidden;background:#fff;border:1px solid #eae8e1;border-radius:7px}.editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:47px;padding:6px 11px;background:#fdfcf9;border-bottom:1px solid #efede7}.editor-toolbar select{height:29px;padding:0 21px 0 8px;color:#74736b;font-size:11px;background-color:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer}.editor-toolbar select:hover{background-color:#f2f1eb}.editor-toolbar select:first-child{width:108px}.color-picker{display:grid;position:relative;place-items:center;width:29px;height:29px;cursor:pointer}.color-dot{width:15px;height:15px;border:1px solid rgba(40,40,30,.14);border-radius:50%}.color-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.toolbar-divider{width:1px;height:19px;margin:0 4px;background:#e8e6df}.tool-button{display:grid;place-items:center;width:29px;height:29px;padding:0;color:#85837b;background:transparent;border:0;border-radius:4px;cursor:pointer}.tool-button:hover{color:#41453b;background:#efeee8}.tool-button.is-active{color:#536c49;background:#e8ede3}.prose-editor{min-height:280px;padding:21px 24px 28px;color:#45463f;font-family:var(--serif);font-size:16px;line-height:1.9;outline:0}.prose-editor>*:first-child{margin-top:0}.prose-editor p{margin:0 0 .8em}.prose-editor ul,.prose-editor ol{padding-left:1.5em}.prose-editor blockquote{margin:1em 0;padding-left:14px;color:#818276;border-left:2px solid #bdc9b5}.prose-editor p.is-editor-empty:first-child:before{float:left;height:0;color:#c5c3b9;content:attr(data-placeholder);pointer-events:none}.page-endnote{display:flex;align-items:center;gap:9px;justify-content:center;margin-top:35px;color:#aaa89f;font-family:var(--serif);font-size:11px;letter-spacing:.05em}.page-endnote span{width:4px;height:4px;background:#a5b09a;border-radius:50%}.entry-loading{display:flex;align-items:center;gap:10px;justify-content:center;min-height:330px;color:#9f9c92;font-family:var(--serif);font-size:13px}.loading-dot{width:7px;height:7px;background:#8c9d80;border-radius:50%;animation:breathe 1s infinite alternate}@keyframes breathe{to{opacity:.3;transform:scale(.72)}}.history-title-row{display:flex;align-items:flex-end;justify-content:space-between;margin-top:14px}.history-title-row h1,.settings-page>h1{font-size:30px}.history-total{display:flex;align-items:baseline;gap:7px;padding:0 3px 4px;color:#9a988f;font-size:10px}.history-total strong{color:#718766;font-family:Georgia,serif;font-size:23px;font-weight:400}.history-layout{display:grid;grid-template-columns:minmax(330px,.92fr) minmax(370px,1.08fr);gap:18px;margin-top:30px;align-items:start}.calendar-card,.history-list-card{padding:23px 23px 19px;background:#fff;border:1px solid #eeece5;border-radius:8px}.calendar-header,.list-card-heading{display:flex;align-items:center;justify-content:space-between}.calendar-caption{display:block;margin-bottom:6px;color:#a09e94;font-size:10px;letter-spacing:.08em}.calendar-header h2,.list-card-heading h2{margin:0;color:#43443d;font-family:var(--serif);font-size:17px;font-weight:500}.calendar-arrows{display:flex;gap:5px}.calendar-arrows button{display:grid;place-items:center;width:29px;height:29px;color:#88877e;background:transparent;border:1px solid #eeece5;border-radius:5px;cursor:pointer}.calendar-arrows button:hover{color:#536b48;background:#f2f4ef}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);justify-items:center}.weekday-row{margin-top:22px;color:#aaa89e;font-size:10px}.weekday-row span{display:grid;place-items:center;width:34px;height:24px}.day-grid{row-gap:4px;margin-top:7px}.calendar-day{display:flex;position:relative;align-items:center;justify-content:center;width:34px;height:34px;padding:0;color:#65665d;font-size:11px;background:transparent;border:0;border-radius:50%;cursor:pointer;transition:background .15s ease,color .15s ease}.calendar-day:hover{background:#f0f1eb}.calendar-day.outside-month{color:#d0cec5}.calendar-day.has-entry{color:#fff;font-weight:600;background:#7e9871}.calendar-day.has-entry:hover{background:#69855d}.calendar-day.selected{box-shadow:0 0 0 2px #a2b397 inset}.calendar-day.is-today:not(.has-entry){color:#516c45;font-weight:700;background:#edf1e9}.calendar-day i{position:absolute;bottom:4px;width:3px;height:3px;background:#e4ebdd;border-radius:50%}.calendar-legend{display:flex;align-items:center;gap:7px;margin-top:17px;padding-top:13px;color:#aaa89e;font-size:9px;border-top:1px solid #f0eee8}.legend-green{width:9px;height:9px;background:#7e9871;border-radius:50%}.legend-today{width:9px;height:9px;margin-left:8px;background:#edf1e9;border:1px solid #cbd5c4;border-radius:50%}.list-count{color:#a6a398;font-size:10px}.date-filter{display:grid;grid-template-columns:1fr 1fr 34px;gap:7px;margin-top:17px}.date-filter label{display:flex;align-items:center;gap:5px;min-width:0;padding:0 7px;color:#aaa89e;font-size:9px;background:#faf9f6;border:1px solid #eeece5;border-radius:5px}.date-filter input{min-width:0;width:100%;padding:8px 0;color:#73736b;font-size:10px;background:transparent;border:0;outline:0}.date-filter input:focus-visible{outline:none}.date-filter button{display:grid;place-items:center;color:#718465;background:#edf1e9;border:0;border-radius:5px;cursor:pointer}.date-filter button:hover{color:#fff;background:#718b64}.history-items{max-height:365px;overflow:auto;margin-top:7px}.history-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 2px;text-align:left;background:transparent;border:0;border-bottom:1px solid #f0eee8;cursor:pointer}.history-item:hover .history-item-copy strong{color:#536b48}.history-item-date{display:grid;place-items:center;width:38px;height:40px;flex:0 0 38px;color:#748568;background:#eef2e9;border-radius:5px}.history-item-date strong{font-family:Georgia,serif;font-size:17px;font-weight:500;line-height:1}.history-item-date small{margin-top:3px;font-size:8px}.history-item-copy{display:grid;gap:5px;flex:1;min-width:0}.history-item-copy strong{overflow:hidden;color:#55564e;font-family:var(--serif);font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.history-item-copy small{color:#aaa89e;font-size:9px}.history-item>svg{color:#c0beb4}.empty-history{display:grid;justify-items:center;padding:54px 10px 40px;color:#c1c0b7}.empty-history p{margin:11px 0 5px;color:#88877e;font-family:var(--serif);font-size:13px}.empty-history span{font-size:10px}.list-message{padding:18px 2px;color:#a09d92;font-size:11px}.settings-page>h1{margin-top:14px}.settings-section{margin-top:29px;padding:24px 27px;background:#fff;border:1px solid #eeece5;border-radius:8px}.settings-section-title{display:flex;align-items:center;gap:12px}.settings-icon{display:grid;place-items:center;width:35px;height:35px;color:#748768;background:#edf1e9;border-radius:50%}.settings-section-title h2{margin:0;color:#484941;font-family:var(--serif);font-size:15px;font-weight:500}.settings-section-title p{margin:4px 0 0;color:#aaa89f;font-size:10px}.settings-controls{display:flex;align-items:flex-end;gap:17px;margin:25px 0 0 47px}.settings-controls label,.password-change-form>label{display:grid;gap:7px;color:#88877e;font-size:10px}.settings-controls select{min-width:145px;height:36px;padding:0 10px;color:#65665d;font-size:11px;background:#fbfaf7;border:1px solid #eae8e1;border-radius:5px}.settings-controls label:nth-child(2) select{min-width:86px}.settings-color{width:45px;height:36px;padding:4px;background:#fbfaf7;border:1px solid #eae8e1;border-radius:5px;cursor:pointer}.preview-line{margin:21px 0 0 47px;padding:15px 17px;background:#faf9f6;border:1px solid #f0eee8;border-radius:5px}.security-section{margin-top:18px}.password-change-form{display:grid;gap:13px;margin:22px 0 0 47px}.password-change-form>label{grid-template-columns:92px minmax(0,1fr);align-items:center}.password-change-form input{height:36px;padding:0 10px;color:#55564e;background:#fbfaf7;border:1px solid #eae8e1;border-radius:5px}.password-form-footer{display:flex;align-items:center;justify-content:space-between;min-height:35px;padding-left:92px}.password-form-footer>span{font-size:10px}.secondary-button{padding:8px 14px;color:#536a49;font-size:11px;background:#edf1e9;border:0;border-radius:5px;cursor:pointer}.secondary-button:hover{color:#fff;background:#718b64}.privacy-note{display:flex;gap:9px;margin:17px 0 0 47px;padding:12px;color:#8a887e;background:#faf9f6;border-radius:5px}.privacy-note svg{flex:0 0 auto;margin-top:1px;color:#9aa38e}.privacy-note p{margin:0;font-size:10px;line-height:1.7}.success-text{color:#718b64}.error-text{color:#b27668}.toast{display:flex;position:fixed;z-index:10;right:24px;bottom:22px;align-items:center;gap:16px;max-width:min(460px,calc(100vw - 40px));padding:12px 15px;color:#fff;font-size:11px;text-align:left;background:#5e6556;border:0;border-radius:6px;box-shadow:0 6px 24px #272b2329;cursor:pointer}.toast span{opacity:.7;font-size:17px}.auth-toast{left:50%;right:auto;transform:translate(-50%)}.delete-dialog-backdrop{display:grid;position:fixed;z-index:20;inset:0;place-items:center;padding:22px;background:#2b2d2752;backdrop-filter:blur(3px)}.delete-dialog{width:min(390px,100%);padding:29px 30px 25px;text-align:center;background:#fdfcf9;border:1px solid #eeece5;border-radius:9px;box-shadow:0 18px 55px #272b2333;animation:dialog-appear .16s ease-out}.delete-dialog-icon{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 15px;color:#a1786e;background:#f6efeb;border-radius:50%}.delete-dialog h2{margin:0;color:#3d3e37;font-family:var(--serif);font-size:19px;font-weight:500}.delete-dialog p{margin:10px 0 23px;color:#8d8b82;font-size:11px;line-height:1.8}.delete-dialog-actions{display:flex;justify-content:center;gap:9px}.delete-dialog-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:105px;min-height:36px;padding:0 13px;font-size:11px;border-radius:5px;cursor:pointer}.delete-dialog-actions .secondary-button{color:#77766e;background:#fff;border:1px solid #e9e7df}.delete-dialog-actions .secondary-button:hover:not(:disabled){background:#f6f5f0}.danger-button{color:#fff;background:#9a6a5e;border:1px solid #9a6a5e}.danger-button:hover:not(:disabled){background:#85574c;border-color:#85574c}.delete-dialog-actions button:disabled{opacity:.65;cursor:wait}@keyframes dialog-appear{0%{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.boot-screen{display:grid;place-content:center;justify-items:center;gap:16px;min-height:100vh;color:#95948b;font-family:var(--serif);font-size:12px;background:var(--canvas)}.boot-mark{width:45px;height:45px}.auth-screen{display:grid;position:relative;place-items:center;min-height:100vh;overflow:hidden;background:#f0efe9}.auth-paper-grain{position:absolute;inset:0;opacity:.36;background:radial-gradient(ellipse at 21% 30%,rgba(166,175,151,.22),transparent 35%),radial-gradient(ellipse at 83% 72%,rgba(198,177,145,.17),transparent 36%);pointer-events:none}.auth-card{position:relative;z-index:1;width:min(410px,calc(100vw - 42px));padding:45px 47px 33px;text-align:center;background:#fdfcf9f0;border:1px solid rgba(229,227,218,.8);border-radius:10px;box-shadow:0 20px 70px #3f3e3413}.auth-mark{width:45px;height:45px;margin:0 auto 17px}.brand-kicker{color:#8f9285;font-size:9px;font-weight:600;letter-spacing:.19em}.auth-card h1{margin:18px 0 8px;color:#383a33;font-family:var(--serif);font-size:24px;font-weight:500;letter-spacing:.035em}.auth-subtitle{margin:0;color:#a09e95;font-size:11px}.auth-form{display:grid;gap:9px;margin-top:29px;text-align:left}.field-label{margin-top:5px;color:#74746b;font-size:10px}.auth-form input{width:100%;height:41px;padding:0 12px;color:#4e5048;font-size:12px;background:#fbfaf7;border:1px solid #e9e7df;border-radius:5px}.auth-form input::placeholder{color:#c0beb4}.form-error{margin:2px 0 0;color:#ac6e61;font-size:10px;line-height:1.6}.primary-button{display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;background:#708565;border:0;border-radius:5px;cursor:pointer;transition:background .16s ease}.primary-button:hover{background:#5c734f}.primary-button:disabled{opacity:.6;cursor:wait}.auth-submit{width:100%;height:43px;margin-top:9px;font-size:12px;letter-spacing:.08em}.button-arrow{transform:rotate(180deg)}.auth-footnote{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:23px;color:#aaa89e;font-size:9px}.auth-side-note{position:absolute;right:37px;bottom:30px;color:#aaa99f;font-family:var(--serif);font-size:11px;letter-spacing:.04em}@media(max-width:1120px){.sidebar{width:205px;padding-right:17px;padding-left:17px}.workspace{width:calc(100% - 205px);margin-left:205px}.page-scroll,.topbar{padding-right:34px;padding-left:34px}.history-layout{grid-template-columns:minmax(290px,.92fr) minmax(330px,1.08fr);gap:13px}.calendar-card,.history-list-card{padding-right:17px;padding-left:17px}}@media(max-width:900px){body{min-width:0}.sidebar{width:68px;align-items:center;padding:22px 8px 15px}.sidebar-brand{padding:0}.sidebar-brand>div:last-child,.sidebar-rule,.nav-caption,.nav-item span,.sidebar-quote,.lock-button:not(:hover),.local-badge{display:none}.main-nav{width:100%;margin-top:28px}.nav-item{justify-content:center;width:48px;margin:0 auto;padding:0}.nav-item svg{flex:0 0 auto}.nav-item.active .nav-indicator{top:9px;right:5px;width:4px;height:15px}.sidebar-bottom{display:grid;justify-items:center;width:100%}.lock-button{justify-content:center;width:46px;height:42px;padding:0;font-size:0}.lock-button svg{width:16px}.workspace{width:calc(100% - 68px);margin-left:68px}.history-layout{grid-template-columns:1fr}.calendar-card,.history-list-card{padding-right:22px;padding-left:22px}.calendar-card{max-width:520px}}@media(max-width:620px){.page-scroll{padding:31px 18px 60px}.topbar{height:53px;padding:0 18px}.breadcrumb{font-size:10px}.diary-heading{flex-wrap:wrap;gap:7px}.diary-heading h1{font-size:26px}.title-input{width:100%;margin-top:1px;margin-left:0;font-size:17px}.title-separator{display:none}.prompt-card{grid-template-columns:28px minmax(0,1fr);padding:15px 13px 12px}.completion-count,.section-aside{font-size:9px}.editor-toolbar{gap:2px;padding-right:6px;padding-left:6px}.editor-toolbar select:first-child{width:92px}.tool-button{width:27px}.prose-editor{min-height:240px;padding:17px}.history-title-row{align-items:flex-start}.history-total{padding-top:8px}.calendar-card,.history-list-card{padding:18px 14px 15px}.settings-section{padding:20px 15px}.settings-controls{flex-wrap:wrap;gap:12px;margin-left:0}.settings-controls select{min-width:124px}.preview-line,.password-change-form,.privacy-note{margin-left:0}.password-change-form>label{grid-template-columns:1fr;gap:6px}.password-form-footer{padding-left:0}.auth-side-note{right:0;left:0;bottom:17px;text-align:center}.auth-card{padding:36px 27px 28px}}
