@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit;background:0 0;border:0}img,svg{display:block}[hidden]{display:none!important}}@layer base{:root{--canvas:#f6f4fa;--paper:#fff;--ink:#373242;--muted:#7d7488;--lilac:#8c779f;--lilac-dark:#756187;--lilac-light:#eee8f4;--blush:#c894ad;--line:#ebe7ef;--sage:#8a9e98;--display:"Iowan Old Style", "Songti SC", "STSong", "SimSun", serif;--body:"Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--utility:"Cascadia Code", "SFMono-Regular", Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--canvas);color:var(--ink);font:14px/1.6 var(--body);-webkit-font-smoothing:antialiased}::selection{color:var(--ink);background:#e7d9ed}:focus-visible{outline:2px solid var(--lilac);outline-offset:4px;border-radius:6px}button:disabled{cursor:wait;opacity:.5}.icon{flex-shrink:0}.eyebrow{color:var(--lilac);font:10px/1.4 var(--utility);letter-spacing:.19em}.reverse{transform:rotate(180deg)}}@layer layout{.archive-layout{grid-template-columns:254px minmax(0,1fr) 258px;max-width:1800px;height:100dvh;margin:auto;display:grid}.sidebar{border-right:1px solid var(--line);scrollbar-width:thin;flex-direction:column;padding:32px 24px 20px;display:flex;overflow-y:auto}.main-panel{background:#fcfbfd;flex-direction:column;min-width:0;min-height:0;display:flex}.memory-panel{border-left:1px solid var(--line);flex-direction:column;padding:36px 28px 26px;display:flex;overflow-y:auto}.archive-toolbar{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:18px;margin:0 36px;padding:20px 4px;display:flex}.conversation{scrollbar-width:thin;scrollbar-color:#ddd5e4 transparent;overscroll-behavior:contain;overflow-anchor:none;flex:1;min-height:0;padding:8px 40px 26px;overflow:hidden auto}.diary-footer{padding:15px 36px calc(15px + env(safe-area-inset-bottom));border-top:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;display:flex}}@layer components{.brand{align-items:center;gap:11px;margin-bottom:43px;display:flex}.brand>span:last-child{font:22px/1.3 var(--display);letter-spacing:.06em;font-weight:600}.brand small{color:var(--muted);font:8px/1 var(--utility);letter-spacing:.13em;margin-top:7px;display:block}.brand-icon{width:38px;height:42px;color:var(--lilac);background:#f1edf6;border:1px solid #d8cde2;border-radius:13px 13px 16px 16px;place-items:center;display:grid;transform:rotate(-7deg)}.brand-icon svg{width:22px;height:22px}.sidebar-heading{color:#8a8095;letter-spacing:.09em;margin:0 10px 12px;font-size:11px}.main-nav{gap:6px;display:grid}.nav-item{color:#75697f;text-align:left;border-radius:9px;align-items:center;gap:12px;padding:12px 13px;font-size:13px;transition:color .16s,background .16s;display:flex}.nav-item .icon{width:18px;height:18px}.nav-item:hover{color:var(--lilac-dark);background:#efebf4}.nav-item.active{color:var(--lilac-dark);background:#eae3f1;font-weight:600}.nav-count{color:#9d8cb1;font:10px var(--utility);margin-left:auto}.sidebar-rule{border-top:1px solid var(--line);margin:26px 9px}.calendar-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.text-button{color:var(--lilac);align-items:center;gap:6px;padding:4px 0;font-size:11px;display:inline-flex}.text-button:hover{color:var(--lilac-dark)}.text-button .icon{width:14px;height:14px}.calendar-month{justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 8px;display:flex}.calendar-month strong{font-size:12px;font-weight:500}.calendar-month input{color:#81718f;background:0 0;border:0;outline:none;width:124px;min-width:0;padding:4px 0;font-size:11px}.calendar-month input::-webkit-calendar-picker-indicator{opacity:.4;cursor:pointer}.calendar-month>div{display:flex}.icon-button{min-width:30px;min-height:30px;color:var(--muted);border-radius:7px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.icon-button:hover{color:var(--lilac-dark);background:#ece6f2}.calendar-month .icon-button{min-width:26px}.calendar-month .icon{width:13px;height:13px}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:3px 1px;display:grid}.calendar-grid>*{aspect-ratio:1;place-items:center;display:grid}.weekday{color:#a7a0ae;font-size:9px}.calendar-day{font:10px/1 var(--utility);color:#8a8294;border-radius:50%;position:relative}.calendar-day:hover{background:#eae3f1}.calendar-day.has-messages:after{content:"";background:var(--blush);border-radius:50%;width:3px;height:3px;position:absolute;bottom:3px;left:calc(50% - 1.5px)}.calendar-day.selected{color:#fff;background:var(--lilac)}.calendar-day.selected:after{background:#eee6f4}.calendar-note{color:#a09aa8;align-items:center;gap:6px;margin:13px 10px 25px;font-size:9px;display:flex}.calendar-note>span{background:var(--blush);border-radius:50%;width:4px;height:4px}.sidebar-bottom{margin-top:auto;padding:20px 8px 0}.together-mark{color:#ada1b7;align-items:center;gap:12px;margin-bottom:28px;display:flex}.together-mark .icon{stroke-width:1px;width:28px;height:28px;transform:rotate(-12deg)}.together-mark>span{font:12px/1.9 var(--display);letter-spacing:.03em}.privacy{color:#aaa3b2;align-items:center;gap:6px;font-size:10px;display:flex}.privacy>.icon{width:12px;height:12px}.privacy>button{margin-left:auto}.privacy button .icon{width:15px;height:15px}.topbar-actions{flex-shrink:0;align-items:center;gap:17px;display:flex}.quiet-button{color:#9a91a5;align-items:center;gap:6px;font-size:10px;display:flex}.quiet-button .icon{width:13px;height:13px}.quiet-button:hover{color:var(--lilac-dark)}.conversation-info{align-items:center;gap:12px;display:flex}.avatar-pair{padding-right:2px;display:flex}.avatar-pair span{color:#9b84ab;width:30px;height:30px;font:11px var(--display);background:#e8dfef;border:2px solid #fcfbfd;border-radius:50%;place-items:center;display:grid}.avatar-pair span+span{color:#ba93a5;background:#f0e1e7;margin-left:-8px}.conversation-info h1{letter-spacing:.04em;font-size:14px;font-weight:600}.conversation-info small{color:#aaa0b2;white-space:nowrap;margin-top:2px;font-size:9px;display:block}.search-box{background:#f7f5fa;border:1px solid #ebe6ef;border-radius:8px;align-items:center;gap:8px;width:235px;height:36px;margin-left:auto;padding:0 11px;transition:border-color .15s;display:flex}.search-box:focus-within{border-color:#bba9c9}.search-box>.icon{color:#a999b6;width:14px;height:14px}.search-box input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;font-size:11px}.search-box input::placeholder{color:#b1a7ba}kbd{color:#b6acbf;font:10px var(--utility);border:1px solid #e6dfea;border-radius:3px;padding:0 4px}.day-divider{flex-direction:column;align-items:center;gap:4px;margin:22px 0 28px;display:flex}.day-divider>span{color:#a093ac;letter-spacing:.03em;background:#f1edf5;border:1px solid #ece6f1;border-radius:20px;padding:4px 13px;font-size:9px}.day-divider>small{color:#b9b0c1;font:8px var(--utility)}.message{align-items:flex-start;gap:10px;margin:20px 0;scroll-margin-block:40px;display:flex}.message-avatar{color:#b28c9f;width:31px;height:31px;font:13px var(--display);background:#eee4ec;border:1px solid #e9dce6;border-radius:11px;flex-shrink:0;place-items:center;display:grid}.message-body{flex-direction:column;align-items:flex-start;min-width:0;max-width:83%;display:flex}.message-meta{color:#8d7c9b;align-items:baseline;gap:9px;margin-bottom:6px;padding:0 2px;font-size:10px;display:flex}.message-meta time{color:#bdb4c5;font:8px var(--utility)}.bubble{background:var(--paper);color:#605569;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #ece7f0;border-radius:2px 12px 12px;padding:10px 14px;font-size:14px;line-height:1.9;transition:background .3s,box-shadow .3s;box-shadow:0 2px 3px #58446c03}.outgoing{flex-direction:row-reverse}.outgoing .message-avatar{color:#9483a6;background:#e5e2ef;border-color:#dfd9e9}.outgoing .message-body{align-items:flex-end}.outgoing .message-meta{flex-direction:row-reverse}.outgoing .bubble{color:#7b638e;background:#eee7f4;border-color:#e8deef;border-radius:12px 2px 12px 12px}.message.grouped{margin-top:-9px}.grouped .message-avatar{visibility:hidden}.grouped .message-meta{display:none}.located .bubble,.located .attachments{background:#f0e3f6;box-shadow:0 0 0 3px #cdb1dc80}.attachments{border-radius:10px;flex-direction:column;gap:8px;max-width:100%;margin-top:8px;display:flex}.attachments:only-child{margin-top:0}.gif-preview{width:215px;color:var(--lilac);text-align:left;background:#f0e9f5;border:1px solid #e4d9ec;border-radius:12px;align-items:center;gap:14px;padding:18px;display:flex}.gif-preview>span{font-size:12px}.gif-preview small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.gif-preview>.gif-label{font:9px var(--utility);border:1px solid #d4c5df;border-radius:4px;margin-left:auto;padding:3px 5px}.photo-button{border:4px solid #fff;border-radius:10px;max-width:290px;padding:0;position:relative;overflow:hidden;box-shadow:0 2px 8px #6b507411}.photo-button>img{object-fit:cover;width:100%;height:auto;max-height:320px;transition:transform .28s}.photo-button:hover>img{transform:scale(1.025)}.photo-button>span{color:#7f7489;opacity:0;background:#ffffffd9;border-radius:5px;align-items:center;gap:4px;padding:3px 7px;font-size:8px;transition:opacity .18s;display:flex;position:absolute;bottom:7px;right:7px}.photo-button:hover>span,.photo-button:focus-visible>span{opacity:1}.photo-button span .icon{width:10px;height:10px}.multiple{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.file-card{min-width:210px;max-width:360px;color:var(--lilac);background:#fff;border:1px solid #e9e2ee;border-radius:10px;align-items:center;gap:12px;padding:13px;display:flex}.file-card>div{min-width:0}.file-card strong{overflow-wrap:anywhere;font-size:11px;font-weight:500;display:block}.file-card small{color:var(--muted);margin-top:3px;font-size:9px;display:block}.file-card>.icon:last-child{width:15px;height:15px;margin-left:auto}.file-card.unavailable{opacity:.75}.video-card{width:300px;max-width:100%}.video-card video{background:#302b39;border-radius:10px;width:100%;max-height:320px}.video-card>span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.audio-card{color:var(--lilac);align-items:center;gap:8px;display:flex}.audio-card audio{max-width:min(270px,55vw);height:40px}.raw-button{color:#a99bb5;margin-top:5px;padding:3px 0;font-size:9px}.diary-footer>span{color:#b0a6ba;align-items:center;gap:7px;font-size:9px;display:flex}.diary-footer>span .icon{color:#c7b4d2;width:12px;height:12px}.diary-footer .text-button{font-size:9px}.memory-topline{color:#a99db3;letter-spacing:.025em;justify-content:space-between;margin-bottom:36px;font-size:9px;display:flex}.memory-topline>span{color:#baa7ca;font-size:17px;line-height:1}.memory-card{background:#fff;border:1px solid #eee9f1;margin:0 4px 32px;padding:9px 9px 17px;position:relative;transform:rotate(3deg);box-shadow:0 5px 20px #77658309,0 1px 3px #77658306}.memory-pin{z-index:1;background:#e2d7e8a8;width:60px;height:20px;position:absolute;top:-11px;left:calc(50% - 30px);transform:rotate(-9deg)}.memory-card-art{background:#f3f0f5;overflow:hidden}.memory-card-art svg{width:100%}.memory-card p{color:#93849f;text-align:center;font:14px/1.9 var(--display);letter-spacing:.04em;margin-top:16px}.memory-card>small{text-align:center;color:#b8aabe;font:italic 11px var(--display);margin-top:13px;display:block}.memory-stats{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin:0 0 29px;padding:0 2px 25px;display:grid}.memory-stats>div+div{border-left:1px solid var(--line);padding-left:20px}.memory-stats span{color:#b1a4ba;margin-bottom:7px;font-size:9px;display:block}.memory-stats strong{font:24px/1.2 var(--display);color:#9e89af}.memory-stats strong small{font:9px var(--body);color:#b7aabd}.archive-health{padding:0 2px}.health-title{color:#9a8da7;align-items:center;gap:6px;font-size:10px;display:flex}.status-dot{background:#9eafa6;border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.status-dot.warning{background:#c29b80}.archive-health p{color:#b2a7bb;margin-top:6px;font-size:9px;line-height:1.8}.setup-note{color:#a99580;background:#f3eee9;border-radius:7px;margin-top:20px;padding:12px;font-size:10px}.memory-bottom{color:#c3b9cb;font:8px/2 var(--utility);letter-spacing:.07em;text-align:center;margin-top:auto;padding-top:40px}.memory-bottom em{font:italic 12px var(--display);letter-spacing:.03em}.load-button{color:#b2a3bf;justify-content:center;align-items:center;gap:6px;width:100%;padding:12px;font-size:10px;display:flex}#load-older .icon{transform:rotate(180deg)}.load-button .icon{width:11px;height:11px}.filter-bar{color:var(--lilac);background:#f3eef7;padding:9px 40px;font-size:10px}.loading{text-align:center;color:#b0a2bc;padding:30px;font-size:11px}.empty-state{text-align:center;color:var(--muted);padding:70px 20px}.empty-state h2{font:20px/1.6 var(--display);color:#9c88ac;margin-bottom:12px}.empty-state p{max-width:280px;margin:auto;font-size:11px;line-height:2}.empty-icon{color:#b7a1c5;background:#f3edf7;border:1px solid #e8deee;border-radius:18px;place-items:center;width:55px;height:55px;margin:0 auto 22px;display:grid}.search-panel{scrollbar-width:thin;flex:1;min-height:0;padding:16px 40px;overflow-y:auto}.search-summary{color:#a291ae;justify-content:space-between;align-items:center;gap:15px;padding-bottom:18px;font-size:11px;display:flex}.search-result{text-align:left;border-bottom:1px solid var(--line);border-radius:4px;gap:14px;width:100%;padding:18px 5px;transition:background .15s;display:flex}.search-result:hover{background:#f6f1f9}.result-avatar{color:#a98cb2;width:34px;height:34px;font:13px var(--display);background:#eee4ef;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.result-body{flex-direction:column;min-width:0;display:flex}.result-meta{color:var(--lilac);font-size:10px}.result-meta>time{color:#b6a9c1;font:9px var(--utility);margin-left:9px}.result-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 10px;font-size:12px}mark{color:#7d568f;background:#eadcf1;border-radius:2px}.result-body>small{color:#b09bbd;align-items:center;gap:5px;font-size:9px;display:flex}.result-body>small .icon{width:10px;height:10px}.button{border-radius:9px;justify-content:center;align-items:center;gap:14px;padding:12px 20px;font-size:12px;display:inline-flex}.button.primary{background:var(--lilac);color:#fff;border:1px solid var(--lilac);transition:background .15s,transform .15s}.button.primary:hover{background:var(--lilac-dark);transform:translateY(-1px)}.button.primary .icon{width:14px;height:14px}.button.subtle{width:100%;color:var(--lilac);background:var(--lilac-light);margin:15px 0}.mobile-calendar,.sidebar-backdrop{display:none}#toast{color:#fff;opacity:0;pointer-events:none;z-index:30;text-align:center;background:#776482f0;border-radius:12px;max-width:85vw;padding:10px 18px;font-size:12px;transition:opacity .18s,transform .18s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,8px);box-shadow:0 5px 30px #51405c18}#toast.show{opacity:1;transform:translate(-50%)}#lightbox{background:0 0;border:0;max-width:94vw;max-height:94dvh;padding:45px 8px 58px;overflow:visible}#lightbox::backdrop{background:#302939ed}#lightbox>img{object-fit:contain;border-radius:7px;max-width:88vw;max-height:76dvh;box-shadow:0 20px 70px #0003}.lightbox-close{color:#fff;width:38px;height:38px;font-size:30px;position:absolute;top:0;right:0}.lightbox-close:hover{color:#fff;background:#ffffff18}.lightbox-download{color:#fff;background:#ffffff13;border:1px solid #ffffff20;font-size:11px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.entry{background:radial-gradient(ellipse at 27% 30%, #f0e8f6, transparent 50%), radial-gradient(ellipse at 80% 75%, #f3e9ee, transparent 45%), var(--canvas);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:30px 20px;display:flex}.entry-orbit{color:#b79cc8;place-items:center;width:90px;height:73px;margin-bottom:28px;display:grid;position:relative}.entry-orbit>.icon{stroke-width:1px;width:35px;height:35px;transform:rotate(-9deg)}.entry-orbit>span{border:1px solid #dfd1e8;border-radius:50%;width:82px;height:57px;position:absolute;transform:rotate(-35deg)}.entry-orbit>span:nth-child(2){border-color:#e6d5df;transform:rotate(35deg)}.entry-card{text-align:center;background:#ffffffa6;border:1px solid #fff;border-radius:24px;width:min(390px,100%);padding:38px 34px 26px;animation:.55s ease-out both arrive;box-shadow:0 15px 70px #a182b510}.entry-card .eyebrow{font-size:8px}.entry-card h1{font:34px/1.6 var(--display);color:#7e648f;letter-spacing:.13em;margin:14px 0}.entry-description{font:15px/1.9 var(--display);color:#a392b0;margin-bottom:33px}#login-form{text-align:left}#login-form label{color:#a696b2;margin-bottom:10px;font-size:10px;display:block}.password-wrap{background:#f9f6fb;border:1px solid #e9e1ee;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.password-wrap .icon{color:#b4a1c1;width:15px;height:15px}.password-wrap input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.password-wrap:focus-within{border-color:#b6a2c6}.password-wrap input::placeholder{color:#c5b9ce}#login-form>.button{width:100%}.form-error{color:#b7838e;min-height:30px;padding:6px 0;font-size:10px}.entry-footnote{color:#b6a6c2;align-items:center;gap:6px;margin-top:30px;font-size:9px;display:flex}.entry-footnote .icon{width:11px;height:11px}@keyframes arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}@layer responsive{@media (min-width:1500px){.archive-layout{grid-template-columns:276px minmax(0,1fr) 290px}.sidebar{padding:36px 28px 24px}.memory-panel{padding-inline:36px}.conversation{padding-inline:60px}.bubble{padding:11px 16px;font-size:14px}.message-meta{font-size:10px}.archive-toolbar{margin-inline:56px}.search-box{width:265px}.photo-button{max-width:330px}.message{margin-block:24px}.message.grouped{margin-top:-12px}}@media (max-width:1180px){.archive-layout{grid-template-columns:235px minmax(0,1fr);max-width:1100px}.memory-panel{display:none}.sidebar{padding-inline:20px}.bubble{font-size:14px}.message-meta{font-size:10px}.conversation{padding-inline:32px}.search-box{width:240px}}@media (max-width:720px){.archive-layout{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:21;background:var(--canvas);width:280px;padding-top:calc(30px + env(safe-area-inset-top));transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:20px 0 70px #44344b13}.sidebar.open{transform:translate(0)}.sidebar-backdrop{z-index:20;background:#3a2c4c60;display:block;position:fixed;inset:0}.mobile-calendar{display:inline-flex}.topbar-actions{order:1;gap:13px;margin-left:auto}.quiet-button{min-height:36px;padding:4px 0}.quiet-button span{display:none}.quiet-button .icon{width:17px;height:17px}.archive-toolbar{padding:calc(14px + env(safe-area-inset-top)) 0 14px;flex-wrap:wrap;gap:12px;margin:0 21px}.conversation-info{gap:9px}.conversation-info h1{font-size:14px}.conversation-info small{font-size:8px}.search-box{order:2;width:100%;height:39px}.search-box input{font-size:12px}.search-box kbd{display:none}.conversation{padding:4px 20px 22px}.message{gap:8px;margin-block:21px}.message-body{max-width:calc(100% - 65px)}.message-avatar{border-radius:10px;width:29px;height:29px;font-size:12px}.message-meta{font-size:9px}.bubble{padding:9px 12px;font-size:14px}.photo-button{max-width:255px}.day-divider{margin-block:20px 25px}.diary-footer{padding:12px 21px calc(12px + env(safe-area-inset-bottom))}.diary-footer>span{gap:5px;font-size:8px}.diary-footer .text-button{min-height:30px;font-size:9px}.filter-bar{padding-inline:22px;font-size:9px}.search-panel{padding:16px 22px}.search-summary{gap:10px;font-size:10px}.calendar-grid{gap:4px}.calendar-day{font-size:12px}.calendar-day.has-messages:after{bottom:4px}.nav-item{min-height:44px}.icon-button{min-width:36px;min-height:36px}.calendar-month .icon-button{min-width:30px}.file-card{width:100%;min-width:0;padding:10px}.entry-card{padding:36px 28px 25px}}@media (max-height:760px) and (min-width:721px){.sidebar{padding-top:25px}.brand{margin-bottom:29px}.sidebar-rule{margin-block:20px}.together-mark{display:none}.memory-panel{padding-top:28px}.memory-topline{margin-bottom:26px}.memory-bottom{padding-top:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}}
