.qiuqiu-popups{position:absolute;bottom:calc(100% + 10px);right:-9px;width:244px;display:flex;flex-direction:column;gap:8px;pointer-events:auto;transform-origin:82% 100%}.qiuqiu-popups[hidden]{display:none}.qiuqiu-popups.appear{animation:qiuqiu-message .28s ease-out both}
.qiuqiu-popups .qiuqiu-bubble{position:relative;inset:auto;width:100%;box-sizing:border-box;padding:13px 27px 13px 16px;border-radius:16px}.qiuqiu-popups .qiuqiu-bubble:after{display:none}
.qiuqiu-records{position:relative;display:flex;align-items:center;gap:12px;text-align:left;width:100%;box-sizing:border-box;padding:12px 15px;border:1px solid #d5bf8b52;border-radius:16px 16px 5px 16px;color:#efe3c8;background:linear-gradient(110deg,#263740f5,#172731f5);box-shadow:0 7px 30px #0005;cursor:pointer;touch-action:manipulation}
.qiuqiu-records:after{content:"";position:absolute;right:31px;bottom:-6px;width:10px;height:10px;background:#1a2a33;border-right:1px solid #d5bf8b52;border-bottom:1px solid #d5bf8b52;transform:rotate(45deg)}.qiuqiu-records img{width:39px;height:44px;object-fit:cover;border-radius:7px;border:1px solid #e6d1ab45;transform:rotate(-6deg)}.qiuqiu-records strong{display:block;font-size:13px;letter-spacing:.09em;font-weight:500}.qiuqiu-records small{display:block;font-size:10px;color:#b1bfc2;margin-top:5px;letter-spacing:.05em}.qiuqiu-records>span:last-child{margin-left:auto;font-size:23px;color:#d8c797}.qiuqiu-records:focus-visible,.memory-book button:focus-visible{outline:2px solid #dfc48b;outline-offset:3px}
.memory-overlay{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:14px;box-sizing:border-box;background:#02060bed;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overscroll-behavior:contain;touch-action:pan-y pinch-zoom;color:#eae4d6;font-family:-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif}.memory-overlay[hidden]{display:none}
.memory-book{display:flex;flex-direction:column;position:relative;overflow:hidden;width:min(100%,760px);height:min(100%,900px);border:1px solid #ddcfa62c;border-radius:25px;background:radial-gradient(ellipse at 50% 20%,#23333b,#101b24 65%,#10191f);box-shadow:0 25px 100px #0008;animation:memory-open .25s ease-out}
.memory-header{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 22px 16px;flex-shrink:0}.memory-eyebrow{font-size:9px;letter-spacing:.22em;color:#a99d83}.memory-header h2{font-size:23px;font-weight:400;letter-spacing:.13em;margin:9px 0 8px;color:#f0e4ca}.memory-header h2 span{font-size:19px;color:#c4ac78;margin-left:13px}.memory-header p{font-size:11px;letter-spacing:.035em;color:#a4b1b7;margin:0;line-height:1.6}
.memory-book button{-webkit-tap-highlight-color:transparent;cursor:pointer;touch-action:manipulation;font-family:inherit}.memory-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid #acb8bc30;border-radius:50%;background:#ffffff05;color:#b7c4ca;font-size:26px;line-height:1;flex-shrink:0}
.memory-stage{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:0;margin:0 18px;overflow:hidden;border:1px solid #9eb9c41d;border-radius:15px;background:radial-gradient(ellipse,#1c2a31,#090f15);isolation:isolate;touch-action:pan-y pinch-zoom}.memory-stage>img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-select:none;filter:drop-shadow(0 4px 24px #0007)}.memory-stage>img.changing{opacity:.35}
.memory-kind{position:absolute;left:12px;top:12px;padding:5px 9px;border:1px solid #eee1bc2c;border-radius:20px;background:#0c1723b8;font-size:9px;letter-spacing:.08em;color:#f1e6d2;pointer-events:none}.memory-loading{position:absolute;inset:0;display:grid;place-items:center;background:#101a23d9;font-size:12px;color:#c8c4ba;letter-spacing:.07em}.memory-loading[hidden]{display:none}.memory-motion{position:absolute;right:10px;bottom:10px;background:#08131bce;border:1px solid #e5d2a83d;border-radius:18px;color:#eee0c6;font-size:10px;line-height:1;padding:9px 12px}.memory-motion[hidden]{display:none}
.memory-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 20px 12px;flex-shrink:0}.memory-arrow{display:grid;place-items:center;width:35px;height:35px;border:1px solid #becbd429;border-radius:50%;color:#e5d0a6;background:#e3c78908;font-size:26px;line-height:1;flex-shrink:0}.memory-arrow:disabled{opacity:.2;cursor:default}.memory-caption-copy{text-align:center}.memory-caption-copy h3{font-size:13px;line-height:1.5;letter-spacing:.07em;font-weight:400;margin:0 0 5px}.memory-caption-copy p{font-size:10px;color:#cbb68e;letter-spacing:.1em;font-variant-numeric:tabular-nums;margin:0}.memory-caption-rule{color:#67767f}.memory-caption-hint{margin-left:13px;color:#83959f;letter-spacing:.025em;font-size:9px}
.memory-thumbnails{display:flex;gap:9px;overflow-x:auto;flex-shrink:0;padding:3px 20px 8px;scrollbar-width:thin;scrollbar-color:#7e80706b transparent;overscroll-behavior-x:contain;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.memory-thumb{width:43px;height:51px;flex-shrink:0;border:1px solid #b6b6a522;border-radius:7px;background:#06101a;padding:2px;opacity:.5;transition:opacity .2s,border-color .2s}.memory-thumb img{display:block;width:100%;height:100%;border-radius:4px;object-fit:cover;pointer-events:none}.memory-thumb[aria-current=true]{opacity:1;border-color:#e0c17f;box-shadow:0 0 0 1px #e0c17f22}.memory-footer{text-align:center;margin:8px 12px 14px;color:#85999f;font-size:9px;letter-spacing:.08em;flex-shrink:0}
@keyframes memory-open{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:700px){.memory-header{padding:24px 28px 18px}.memory-stage{margin:0 25px}.memory-thumbnails{padding-left:27px;padding-right:27px}.memory-caption{margin-left:28px;margin-right:28px}.memory-thumb{width:49px;height:58px}}
@media(max-height:670px){.memory-overlay{padding:8px}.memory-book{border-radius:19px}.memory-header{padding:13px 17px 11px}.memory-header h2{font-size:20px;margin:5px 0}.memory-eyebrow{font-size:8px}.memory-header p{font-size:10px}.memory-caption{margin:9px 17px 7px}.memory-thumbnails{padding-bottom:4px;gap:7px}.memory-thumb{height:40px;width:34px}.memory-footer{margin:5px 10px 9px;font-size:8px}.memory-caption-hint{display:none}}
@media(prefers-reduced-motion:reduce){.memory-book,.qiuqiu-popups.appear{animation:none}.memory-thumbnails{scroll-behavior:auto}}
.memory-message{flex-shrink:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:60px;margin:0 18px 12px;padding:8px 14px;border:1px solid #cfbb8b29;border-radius:12px;background:linear-gradient(110deg,#d4bd8310,#d4bd8304);color:#e7d8b9;text-align:center;font-size:12px;line-height:1.8;letter-spacing:.025em;overflow-wrap:anywhere}.memory-message:before{content:'♡';font-family:Georgia,serif;font-size:17px;flex-shrink:0;color:#bca77a;margin-right:10px}
@media(min-width:700px){.memory-message{margin-left:25px;margin-right:25px;min-height:44px}}
@media(max-height:670px){.memory-message{margin:0 17px 9px;padding:7px 10px;min-height:54px;font-size:11px;line-height:1.8}.memory-message:before{font-size:15px;margin-right:8px}}

.qiuqiu-talk-card{position:relative;pointer-events:auto;border:1px solid #e9cf945c;border-radius:16px;background:linear-gradient(120deg,#2d363af7,#182832f7);box-shadow:0 7px 30px #0005}
.qiuqiu-talk-open{display:flex;align-items:center;gap:11px;text-align:left;width:100%;padding:16px 23px 15px 14px;border:0;border-radius:16px;background:none;color:#f3e7cd;cursor:pointer;touch-action:manipulation;font-family:inherit}
.qiuqiu-talk-open>.talk-invite-heart{display:grid;place-items:center;width:34px;height:39px;flex-shrink:0;color:#e5c68e;font:28px/1 Georgia,serif;border:1px solid #dcc48a3c;border-radius:12px;background:#d1b36a0a}.qiuqiu-talk-open strong{display:block;font-size:13px;letter-spacing:.07em;font-weight:500}.qiuqiu-talk-open small{display:block;font-size:9px;line-height:1.7;color:#bdc4bf;margin-top:5px;letter-spacing:.01em}.qiuqiu-talk-open>span:last-child{margin-left:auto;font-size:22px;color:#d8c797}.qiuqiu-talk-card>.qiuqiu-close{right:1px;top:0;font-size:15px;width:23px;height:23px}
.talk-overlay{position:fixed;inset:0;z-index:21;display:flex;align-items:center;justify-content:center;padding:14px;box-sizing:border-box;background:#03070ded;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#eee7d9;font-family:-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}.talk-overlay[hidden]{display:none}
.talk-book{display:flex;flex-direction:column;position:relative;overflow:hidden;width:min(100%,520px);height:min(100%,880px);border:1px solid #d7c39335;border-radius:25px;background:radial-gradient(ellipse at 12% 0%,#29373b,#111e27 58%,#101a22);box-shadow:0 25px 100px #0008;animation:memory-open .28s ease-out}
.talk-header{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 22px 14px;flex-shrink:0}.talk-eyebrow{color:#ab9b7f;letter-spacing:.22em;font-size:9px}.talk-header h2{font-size:23px;letter-spacing:.1em;font-weight:400;color:#f1e4c7;margin:9px 0 8px}.talk-header h2 span{margin-left:13px;font-family:Georgia,serif;font-size:25px;color:#d7bd85}.talk-header p{margin:0;color:#a9b7b9;font-size:11px;letter-spacing:.04em;line-height:1.6}.talk-close{width:36px;height:36px;display:grid;place-items:center;flex-shrink:0;border:1px solid #b8c6c92c;border-radius:50%;background:#ffffff04;color:#b6c3c8;font:25px/1 sans-serif}
.talk-progress{display:flex;align-items:center;gap:11px;flex-shrink:0;margin:0 22px;padding-bottom:13px;border-bottom:1px solid #aab5b916;color:#b9aa8d;font-size:9px;letter-spacing:.06em;font-variant-numeric:tabular-nums}.talk-dots{display:flex;gap:5px}.talk-dots i{display:block;width:5px;height:5px;border-radius:50%;background:#c0b28e24}.talk-dots i.current{background:#d9c393;box-shadow:0 0 7px #eacb8b29}.talk-dots i.done{background:#8b9e99}.talk-progress-note{margin-left:auto;color:#899d9f;font-size:9px;letter-spacing:.02em}
.talk-history{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:20px 18px 22px;scrollbar-width:thin;scrollbar-color:#9a98744d transparent;outline:none}.talk-history:focus-visible{box-shadow:inset 0 0 0 1px #deca9955}
.talk-row{display:flex;align-items:flex-start;gap:9px;margin:0 0 18px;animation:talk-message-in .25s ease-out}.talk-row.user{justify-content:flex-end;margin-top:6px}.talk-avatar{flex-shrink:0;width:31px;height:31px;border-radius:50%;object-fit:cover;object-position:50% 35%;border:1px solid #e6d4ab52;box-shadow:0 2px 9px #0003}.talk-dog-name{display:block;margin:0 0 5px 3px;color:#97adaf;font-size:9px;letter-spacing:.08em}.talk-bubble-wrap{min-width:0;max-width:calc(100% - 40px)}
.talk-bubble{display:block;text-align:left;width:100%;padding:13px 14px;border:1px solid #b7c3c22b;border-radius:3px 16px 16px 16px;background:linear-gradient(120deg,#2b3e46b3,#20323db3);color:#e6e7de;font-family:inherit;font-size:12px;line-height:1.95;letter-spacing:.025em;white-space:pre-line;overflow-wrap:anywhere}.talk-row.user .talk-bubble{width:auto;max-width:86%;border-radius:16px 3px 16px 16px;border-color:#e1c48833;background:#b8995720;color:#e9d7b7;font-size:12px;padding:10px 14px;line-height:1.8}.talk-reply-hint{display:block;border-top:1px solid #c4d2d218;padding-top:9px;margin-top:11px;color:#d4be94;font-size:10px;line-height:1.5;letter-spacing:.04em;white-space:normal}.talk-reply-hint:after{content:" ›";font-size:15px;margin-left:5px}.talk-reply:disabled{opacity:1;color:#e6e7de;cursor:default}.talk-reply:disabled .talk-reply-hint{display:none}.talk-reply:not(:disabled){border-color:#d6bd815c;box-shadow:0 3px 15px #0002}
.talk-overlay button,.qiuqiu-talk-open{-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer}.talk-overlay button:focus-visible,.qiuqiu-talk-open:focus-visible{outline:2px solid #dfc48b;outline-offset:3px}.talk-divider{display:flex;align-items:center;gap:10px;margin:18px 0;color:#8fa2a4;font-size:9px;letter-spacing:.08em;text-align:center}.talk-divider:before,.talk-divider:after{content:"";flex:1;height:1px;background:#a6bfc11a}
.talk-composer{flex-shrink:0;padding:13px 18px 12px;border-top:1px solid #b4c1b91c;background:#0b151dc2}.talk-question{font-size:11px;letter-spacing:.025em;line-height:1.6;color:#c5d0ce;margin:0 0 10px}.talk-options{display:flex;flex-direction:column;gap:7px}.talk-choice{display:flex;align-items:center;gap:9px;min-height:43px;padding:10px 12px;border:1px solid #c8c4aa35;border-radius:12px;background:#b8c0b208;color:#e4ddcc;font-family:inherit;text-align:left;font-size:12px;line-height:1.6;letter-spacing:.02em}.talk-choice:before{content:"";width:5px;height:5px;border:1px solid #bca87f8c;border-radius:50%;flex-shrink:0}.talk-choice:after{content:"›";margin-left:auto;color:#a89c83;font-size:17px}.talk-choice:active{background:#d0b98122}.talk-choice:disabled{opacity:.45;cursor:default}.talk-footnote{margin:10px 0 0;font-size:8px;letter-spacing:.08em;text-align:center;color:#7b9398;line-height:1.5}.talk-waiting{margin:0;min-height:46px;display:flex;align-items:center;justify-content:center;color:#a4b5b6;font-size:11px;letter-spacing:.04em}.talk-waiting[hidden]{display:none}.talk-typing span{display:inline-block;margin-right:4px;width:4px;height:4px;border-radius:50%;background:#c3c7ba;animation:talk-typing 1.1s infinite}.talk-typing span:nth-child(2){animation-delay:.16s}.talk-typing span:nth-child(3){animation-delay:.32s}
.talk-letter{border:1px solid #d5c18e3d;border-radius:17px;padding:23px 19px 22px;margin:8px 0 4px;background:radial-gradient(ellipse at 50% 0%,#b7a06c17,#b7a06c04 75%);box-shadow:0 4px 22px #0002}.talk-letter-icon{font:29px/1.2 Georgia,serif;color:#d6bd86;text-align:center;margin-bottom:10px}.talk-letter h3{color:#efdfbc;font-size:17px;line-height:1.6;letter-spacing:.08em;font-weight:400;margin:0 0 24px;text-align:center;outline:none}.talk-letter p{font-size:12px;line-height:2.05;letter-spacing:.035em;color:#d9e0d9;margin:0 0 16px;overflow-wrap:anywhere}.talk-letter p.salutation{color:#f0e1c5;margin-bottom:16px}.talk-letter p.promise{color:#f1ddb2;font-size:13px;border-top:1px solid #c4bb962b;border-bottom:1px solid #c4bb962b;padding:13px 0;line-height:1.9}.talk-letter p.signature{text-align:right;color:#cfbd96;font-size:11px;margin:23px 0 0;letter-spacing:.08em}.talk-ending-actions{display:flex;gap:8px}.talk-ending-actions button{flex:1;min-height:43px;padding:10px 8px;border:1px solid #d4bd8e3b;border-radius:12px;background:#d3ba8510;color:#e6d6b5;font-family:inherit;font-size:11px;line-height:1.6}.talk-ending-actions button:first-child{background:none;color:#b7c2bd;border-color:#c1cac128}.talk-ending-caption{font-size:10px;line-height:1.7;color:#adbbb9;margin:0 0 12px;text-align:center}
@keyframes talk-message-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes talk-typing{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-2px)}}
@media(max-height:670px){.talk-overlay{padding:8px}.talk-book{border-radius:19px}.talk-header{padding:13px 16px 10px}.talk-eyebrow{font-size:8px}.talk-header h2{font-size:20px;margin:5px 0}.talk-header p{font-size:10px}.talk-close{width:32px;height:32px}.talk-progress{margin:0 16px;padding-bottom:9px;gap:8px;font-size:8px}.talk-progress-note{font-size:8px}.talk-history{padding:13px 13px 16px}.talk-row{gap:7px;margin-bottom:13px}.talk-avatar{width:26px;height:26px}.talk-bubble-wrap{max-width:calc(100% - 33px)}.talk-bubble{font-size:11px;line-height:1.85;padding:11px 12px}.talk-composer{padding:10px 13px 9px}.talk-question{font-size:10px;margin-bottom:8px}.talk-options{gap:6px}.talk-choice{font-size:11px;min-height:40px;padding:8px 10px}.talk-footnote{font-size:8px;margin-top:7px}.talk-letter{padding:18px 15px}.talk-letter p{font-size:11px}.talk-letter h3{font-size:16px}.talk-letter p.promise{font-size:12px}}
@media(prefers-reduced-motion:reduce){.talk-book,.talk-row,.talk-typing span{animation:none}}
.talk-user-wrap{display:flex;flex-direction:column;align-items:flex-end;max-width:86%;min-width:0}.talk-row.user .talk-bubble{max-width:100%;box-sizing:border-box}.talk-edit{border:0;background:none;color:#a8afa2;font:9px/1.6 inherit;font-size:9px;font-family:inherit;padding:7px 4px 3px;min-height:30px;letter-spacing:.03em}.talk-edit:before{content:'↶ ';color:#c4ae84}.talk-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;border-top:1px solid #bbbea518;padding-top:4px}.talk-navigation[hidden],.talk-navigation button[hidden]{display:none}.talk-navigation button{border:0;border-radius:7px;background:none;color:#c7bc9f;font-family:inherit;font-size:10px;line-height:1.6;min-height:36px;padding:6px 3px;letter-spacing:.025em}.talk-navigation button:active,.talk-edit:active{color:#f5e4bf;background:#e5d2a40c}#talk-back:before{content:'‹ ';margin-right:3px}#talk-reselect{margin-left:auto}#talk-reselect:before{content:'↶ ';margin-right:3px}.talk-choice.previous-choice{border-color:#d9c18a69;background:#b99d5c0e}.talk-previous-label{font-size:8px;line-height:1.4;color:#c5b58e;white-space:nowrap;margin-left:auto;flex-shrink:0}.talk-choice.previous-choice:after{margin-left:0}.talk-dots{gap:4px}.talk-ending-caption{margin-bottom:5px}.talk-composer:has(#talk-restart)>.talk-question{display:none}
@media(max-height:670px){.talk-navigation{margin-top:6px;padding-top:2px}.talk-navigation button{min-height:32px;font-size:9px}.talk-progress-note{font-size:7px;letter-spacing:0}.talk-progress{gap:6px}.talk-previous-label{font-size:7px}.talk-edit{min-height:28px}}

.qiuqiu-return-card{border-color:#e0c4906b;background:linear-gradient(120deg,#35403ff7,#1d2d34f7)}.qiuqiu-return-card strong{font-size:12px;line-height:1.65;letter-spacing:.035em}.qiuqiu-return-card .talk-invite-heart{font-size:23px}.qiuqiu-return-card .qiuqiu-talk-open{padding-right:22px}.qiuqiu-popups{max-height:calc(100vh - 100px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 2px 8px;box-sizing:border-box}
.return-overlay{position:fixed;inset:0;z-index:22;display:flex;align-items:center;justify-content:center;padding:14px;box-sizing:border-box;background:#03070ded;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#e8e7dc;font-family:-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}.return-overlay[hidden]{display:none}
.return-book{display:flex;flex-direction:column;overflow:hidden;width:min(100%,560px);height:min(100%,880px);border:1px solid #dec79740;border-radius:25px;background:radial-gradient(ellipse at 15% 0%,#30403f,#14232b 52%,#101c25);box-shadow:0 25px 100px #0008;animation:memory-open .28s ease-out}
.return-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:22px 21px 17px;flex-shrink:0;border-bottom:1px solid #c3c4ac19}.return-eyebrow{color:#baa584;font-size:8px;letter-spacing:.2em}.return-header h2{font-size:21px;font-weight:400;line-height:1.6;letter-spacing:.045em;color:#f0dfbd;margin:9px 0 7px}.return-header p{color:#aebcb9;font-size:10px;line-height:1.7;margin:0}.return-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid #c3cabe36;border-radius:50%;background:#ffffff03;color:#b8c6c7;font:25px/1 sans-serif;flex-shrink:0}
.return-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#a397734d transparent;padding:23px 22px 26px;outline:none}.return-scroll:focus-visible{box-shadow:inset 0 0 0 1px #ddc48a66}.return-scroll p{font-size:12px;line-height:2;letter-spacing:.025em;margin:0 0 17px;overflow-wrap:anywhere}.return-salutation{color:#e8d4b0}.return-lead{font-size:17px!important;color:#f1dfb9;line-height:1.9!important}.return-portrait{width:57px;height:57px;object-fit:cover;object-position:50% 35%;border:1px solid #d7bb805c;border-radius:50%;display:block;margin:0 0 18px}.return-section-title{color:#e9d6ae;font-weight:400;font-size:14px;line-height:1.8;letter-spacing:.07em;margin:30px 0 16px;padding-top:22px;border-top:1px solid #c5bea529}
.return-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:20px 0}.return-fact{margin:0;padding:12px 11px;background:#d9c49109;border:1px solid #d4c39825;border-radius:11px;min-width:0}.return-fact.wide{grid-column:1/-1}.return-fact dt{color:#9eafad;font-size:9px;line-height:1.7;margin-bottom:5px}.return-fact dd{font-size:12px;color:#e7dbc1;line-height:1.8;margin:0;overflow-wrap:anywhere}.return-quote{margin:18px 0;padding:20px 16px;border:1px solid #d9c18448;border-radius:13px;background:linear-gradient(125deg,#dcc48b12,#ddc48a04)}.return-quote p{color:#efe0bf;font-size:14px;line-height:2.1;margin:0 0 7px}.return-quote p:last-child{margin-bottom:0}.return-signature{text-align:right;color:#d8c095;font-size:11px!important;margin:23px 0 11px!important}.return-source-note{font-size:9px!important;color:#8fa2a4;text-align:center;margin:20px 0 0!important}
.return-footer{flex-shrink:0;padding:13px 18px 12px;border-top:1px solid #c5c6aa21;background:#0b171fc4}.return-actions{display:flex;gap:8px}.return-actions button{flex:1;min-height:43px;padding:10px 6px;border:1px solid #d8bd864a;border-radius:12px;background:#cfb67612;color:#ead8b0;font-family:inherit;font-size:11px;line-height:1.7}.return-actions button:last-child{background:none;color:#c0cbc6;border-color:#c3ccbb30}.return-footer p{margin:10px 0 0;color:#829a9d;font-size:8px;letter-spacing:.08em;text-align:center}.return-overlay button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.return-overlay button:focus-visible{outline:2px solid #dfc48b;outline-offset:3px}
@media(max-height:670px){.return-overlay{padding:8px}.return-book{border-radius:19px}.return-header{padding:14px 15px 12px}.return-header h2{font-size:18px;margin:6px 0}.return-header p{font-size:9px}.return-eyebrow{font-size:7px}.return-close{width:32px;height:32px}.return-scroll{padding:18px 17px 20px}.return-scroll p{font-size:11px;line-height:1.95}.return-lead{font-size:16px!important}.return-quote p{font-size:13px}.return-fact{padding:10px}.return-fact dd{font-size:11px}.return-footer{padding:10px 13px}.return-footer p{margin-top:7px}}
@media(prefers-reduced-motion:reduce){.return-book{animation:none}}

:root{--paper:#f5f0e8;--ink:#263e34;--muted:#657166;--green:#294e3f;--line:#d8dbcd;--gold:#9a7852;--serif:"Songti SC","Noto Serif CJK SC","SimSun",serif;color-scheme:light}
#scene{overflow:hidden}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid #936c3f;outline-offset:5px}[hidden]{display:none!important}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}button{color:inherit}::selection{background:#d6dfcc}svg{width:24px;height:24px;fill:currentColor}.page-width{width:min(1180px,calc(100% - 96px));margin:0 auto}.skip-link{position:fixed;top:-70px;left:20px;z-index:100;background:white;padding:10px 20px}.skip-link:focus{top:12px}
.site-header{height:104px;display:flex;align-items:center;gap:40px;width:min(1320px,calc(100% - 80px));margin:auto;border-bottom:1px solid #294e3f17}.brand{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:24px;letter-spacing:3px;line-height:1.2;flex-shrink:0}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:#294e3f;border-radius:50%;color:#eee6d1;transform:rotate(-14deg)}.brand-mark svg{width:27px;height:27px}.brand small{display:block;font:10px/1.5 -apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;letter-spacing:2px;margin-top:5px;color:var(--muted)}.top-nav{display:flex;gap:34px;margin-left:auto;font-size:13px}.top-nav a{padding:10px 0;position:relative}.top-nav a:after{content:"";position:absolute;height:1px;bottom:5px;left:0;right:100%;background:var(--green);transition:right .2s}.top-nav a:hover:after{right:0}.header-note{font-size:11px;color:var(--muted);border-left:1px solid var(--line);padding-left:28px;white-space:nowrap}.header-note i{display:inline-block;width:5px;height:5px;background:#71846a;border-radius:50%;margin-right:9px}
.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:58px;padding-top:63px;padding-bottom:70px;min-height:720px}.eyebrow{display:flex;align-items:center;gap:11px;font:10px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;letter-spacing:2px;color:var(--gold)}.eyebrow>span:empty{height:1px;width:26px;background:var(--gold)}.hero h1{font:66px/1.38 var(--serif);letter-spacing:3px;margin:25px 0 23px;font-weight:400}.handwritten{color:#64794f;position:relative;white-space:nowrap}.handwritten:after{content:"";position:absolute;left:1px;right:18px;height:8px;bottom:-7px;border-bottom:2px solid #a8b190;border-radius:50%;transform:rotate(-3deg)}.hero-description{font-size:14px;color:var(--muted);line-height:2.1;letter-spacing:.5px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:center;gap:23px;padding:13px 23px;border-radius:6px;border:1px solid transparent;font-size:12px;line-height:1.8;min-height:47px;letter-spacing:.5px;transition:background .2s,transform .2s}.button.primary{background:var(--green);color:#fff9ec;box-shadow:0 5px 12px #294e3f10}.button.primary:hover{background:#1b3e30;transform:translateY(-2px)}.button span{font-size:18px;line-height:1}.button.outline{border-color:#a8b69e;background:transparent}.button.outline:hover{background:#e7e9dc}.text-link{display:inline-flex;align-items:center;gap:15px;background:none;border:0;padding:10px 0;font-size:12px;color:var(--green);line-height:1.7;min-height:40px}.text-link span{font-size:17px}.hero-meta{display:flex;gap:16px;align-items:center;margin-top:40px;color:var(--muted);font-size:11px}.hero-meta small{display:block;font-size:10px;color:#70796a;margin-top:2px}.avatar-stack{display:flex;padding-right:4px}.avatar-stack i,.avatar-stack img{display:grid;place-items:center;object-fit:cover;width:34px;height:34px;border:2px solid var(--paper);border-radius:50%;margin-left:-6px;background:#e1d5c5;color:#786452;font-size:10px;font-style:normal}.avatar-stack i:first-child{margin-left:0;background:#d4dfd1;color:#4f6754}.avatar-stack img{object-position:50% 30%}
.hero-art{position:relative;padding:22px 25px 0 20px;max-width:495px;width:100%;justify-self:end}.portrait-frame{position:relative;padding:12px 12px 21px;background:#fffbf5;border:1px solid #d4d8c9;border-radius:220px 220px 10px 10px;box-shadow:0 22px 50px #354b3020;transform:rotate(3deg);z-index:1}.portrait-photo{overflow:hidden;border-radius:210px 210px 4px 4px;background:#d5d4c8;aspect-ratio:.91}.portrait-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform:rotate(-3deg) scale(1.08)}.portrait-frame figcaption{text-align:center;margin-top:17px;transform:rotate(-3deg);line-height:1.6}.portrait-frame figcaption>span{display:block;font:8px/1.5 Georgia,serif;letter-spacing:2.2px;color:#867a61}.portrait-frame figcaption b{display:block;font:18px/1.8 var(--serif);font-weight:400;letter-spacing:1.8px;margin:4px 0}.portrait-frame figcaption small{font-size:10px;color:var(--muted)}.orbit{position:absolute;inset:3px 7px -12px 0;border:1px solid #9cab812f;border-radius:50%;transform:rotate(-22deg) scale(1.06,.88)}.orbit-two{inset:28px -18px 12px 8px;transform:rotate(18deg) scale(.98,1.07);border-style:dashed}.tiny-star{position:absolute;color:#a08b5b;font-size:37px;z-index:2}.s1{left:-7px;top:40px}.s2{right:-10px;bottom:124px;font-size:24px}.pet-stamp{position:absolute;right:-7px;top:51px;width:99px;height:99px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #a49c78;border-radius:50%;color:#6b7456;font:21px/1.8 var(--serif);transform:rotate(15deg);z-index:2;background:#eeeedeea;box-shadow:inset 0 0 0 5px #eeeedeea,inset 0 0 0 6px #a49c7866}.pet-stamp span{font:7px/1.6 Georgia,serif;letter-spacing:.6px}.pet-touch{position:absolute;bottom:6px;left:-17px;z-index:3;display:flex;gap:10px;align-items:center;background:#fcf8f0;border:1px solid #c8cfb7;border-radius:30px;padding:10px 18px;box-shadow:0 6px 25px #243e3212;transform:rotate(-5deg);font-size:11px;color:#546747}.pet-touch svg{width:23px;height:23px}.pet-touch:hover{background:#e8ecdf}.pet-message{position:absolute;bottom:65px;left:-35px;right:35px;z-index:4;padding:15px 19px;background:#294e3f;color:#fff7e7;font-size:12px;line-height:1.8;border-radius:16px 16px 16px 3px;box-shadow:0 7px 25px #1d352633;animation:pet-hello .25s ease-out}.hero-art:before{content:"";position:absolute;width:95px;height:95px;top:4px;left:32px;border-radius:50%;background:radial-gradient(circle,#b8c79735,transparent 70%);animation:soft-light 7s ease-in-out infinite}
.chapter-divider{display:flex;gap:25px;align-items:center;padding:5px 0 48px;font-size:11px;color:var(--muted);letter-spacing:1px}.chapter-divider i{height:1px;background:var(--line);flex:1}.chapter-divider span:last-child{font:9px/1.5 Georgia,serif;letter-spacing:2px;color:#768167}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px}.section-heading h2{font:32px/1.6 var(--serif);font-weight:400;margin-top:12px;letter-spacing:1.2px}.section-heading h2 em{font-style:normal;color:#768364}.section-heading>p{font-size:12px;line-height:1.95;color:var(--muted);padding-bottom:6px;flex-shrink:0}.section-heading .small-mark{font:26px/1 Georgia,serif;margin-left:15px;color:#9c835e}.section-heading b{font-weight:500;color:var(--green)}
.residents{padding:20px 0 77px}.resident-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.resident{position:relative;display:flex;gap:18px;align-items:flex-start;padding:29px 22px 26px;border:1px solid #cdd4c5;border-radius:9px;background:#f8f6ee;overflow:hidden}.resident-ma{background:#f4ede3;border-color:#d9cdbb}.resident-dog{background:#ecefdf;border-color:#cdd3b8}.resident-symbol,.resident-portrait{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#e0e7d8;color:#647c5e;font:23px/1 var(--serif);margin-top:4px}.resident-ma .resident-symbol{background:#e8dccb;color:#997b62}.resident-portrait{object-fit:cover;object-position:50% 30%;border:3px solid #fff9e8}.resident-tag{font:8px/1.6 Georgia,serif;letter-spacing:1.4px;color:#6a765f}.resident h3{font:25px/1.7 var(--serif);font-weight:400;margin-top:3px}.resident h3 small{font-size:10px;margin-left:8px;color:#637057;font-family:-apple-system,"Microsoft YaHei",sans-serif;letter-spacing:0}.resident p{font-size:11px;color:var(--muted);line-height:1.9;margin-top:5px}.resident-number{position:absolute;right:12px;bottom:1px;font:68px/1 Georgia,serif;color:#4c66460b;pointer-events:none}
.story-section{padding:70px 0 77px;background:#ebece1;border-top:1px solid #dde0d0;border-bottom:1px solid #dde0d0}.story-layout{display:grid;grid-template-columns:225px 1fr;gap:36px}.story-tabs{display:flex;flex-direction:column;gap:6px;padding-top:5px}.story-tabs button{position:relative;display:flex;align-items:center;gap:13px;text-align:left;background:none;border:0;padding:20px 15px 20px 0;border-bottom:1px solid #cdd4be;color:#65725e;font-size:12px;line-height:1.7}.story-tabs button i{font:14px/1.7 Georgia,serif;font-style:normal;color:#919a7b}.story-tabs button b{font-weight:400}.story-tabs button span{margin-left:auto}.story-tabs button[aria-pressed=true]{color:var(--green);border-bottom-color:#647a56}.story-tabs button[aria-pressed=true] i{color:var(--green)}.story-panel{display:grid;grid-template-columns:.83fr 1fr;gap:30px;align-items:center;background:#f8f5ed;border:1px solid #d2d6c4;border-radius:10px;padding:20px}.story-panel figure{position:relative;background:#e3e4d9;border:7px solid #fffdf6;box-shadow:0 6px 18px #34482e12;transform:rotate(-2deg);height:310px;overflow:hidden}.story-panel img{width:100%;height:100%;object-fit:contain}.story-panel .story-text{padding:5px 8px 5px 0}.story-index{font:9px/1.5 Georgia,serif;letter-spacing:1.7px;color:#837251}.story-panel h3{font:24px/1.7 var(--serif);letter-spacing:.7px;font-weight:400;margin:13px 0}.story-panel p{font-size:12px;line-height:2;color:#5e6b5d;margin-bottom:15px}.story-panel p.story-after{font-size:11px;border-top:1px solid #d9ddce;padding-top:14px;color:#6d6c57}.story-panel .text-link{border-bottom:1px solid #b4bea1;min-height:34px;padding:3px 0;font-size:11px}
.album-section{padding:76px 0 78px}.album-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:5px 0 29px}.album-filters{display:flex;flex-wrap:wrap;gap:7px}.album-filters button{border:1px solid transparent;border-radius:20px;background:transparent;padding:8px 16px;font-size:11px;line-height:1.7;color:#68745e;min-height:37px}.album-filters button[aria-pressed=true]{border-color:#a5b298;background:#e4e9db;color:var(--green)}#grid-count{font:11px/1.5 Georgia,serif;color:var(--muted);white-space:nowrap}.memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px}.photo-card{position:relative;display:block;border:0;background:transparent;padding:0;text-align:left;width:100%;border-radius:5px}.photo-card .photo-wrap{position:relative;display:block;aspect-ratio:1.08;background:#e1e1d5;padding:10px;border:1px solid #d9dccd;border-radius:5px;overflow:hidden;transition:transform .3s,box-shadow .3s}.photo-card:nth-child(3n+2) .photo-wrap{transform:rotate(1deg)}.photo-card:nth-child(3n+1) .photo-wrap{transform:rotate(-1deg)}.photo-card:hover .photo-wrap{transform:translateY(-4px) rotate(0);box-shadow:0 10px 28px #28422f18}.photo-wrap>img{height:100%;width:100%;object-fit:cover;object-position:50% 35%;border-radius:2px;filter:saturate(.88)}.photo-card .photo-wrap:after{content:"↗";position:absolute;right:20px;bottom:18px;display:grid;place-items:center;width:29px;height:29px;border:1px solid #fff5;border-radius:50%;background:#263d32a8;color:#fff6de;font-size:17px}.photo-kind{position:absolute;top:22px;left:22px;background:#f7f5eae8;color:#46563f;font-size:9px;line-height:1.5;padding:4px 9px;border:1px solid #ffffff7a;border-radius:20px}.photo-copy{display:block;padding:15px 3px 0}.photo-copy b{display:block;font-size:14px;font-weight:400;letter-spacing:.5px}.photo-copy small{display:block;font-size:11px;line-height:1.9;color:var(--muted);margin-top:5px}.photo-copy .photo-number{display:block;font:9px/1.5 Georgia,serif;letter-spacing:1.3px;margin-top:10px;color:#817c60}.album-more{display:flex;justify-content:center;align-items:center;gap:29px;margin-top:39px}
.visit-section{background:#284738;color:#f1efdc;padding:68px 0 59px;position:relative;overflow:hidden}.visit-section:before{content:"";position:absolute;width:380px;height:380px;border:1px solid #c1d2a31c;border-radius:50%;right:-150px;bottom:-200px;pointer-events:none}.visit-section .eyebrow{color:#c1c29a}.visit-section .section-heading h2 em{color:#c1c5a4}.visit-section .section-heading>p{color:#cad2bf}.visit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.visit-card{position:relative;display:flex;flex-direction:column;text-align:left;align-items:flex-start;border:1px solid #d3d8b738;border-radius:8px;padding:26px 26px 32px;background:#f2f0d308;color:#f1efdc;min-width:0;transition:background .2s,transform .2s}.visit-card:hover{background:#f2f0d316;transform:translateY(-3px)}.visit-icon{display:grid;place-items:center;font:36px/1.3 Georgia,serif;color:#d1d1ab;margin-bottom:23px}.visit-label{font:8px/1.6 Georgia,serif;letter-spacing:1.7px;color:#b6c6ad}.visit-card strong{font:22px/1.8 var(--serif);font-weight:400;margin:7px 0 12px;letter-spacing:.5px}.visit-card>span:last-of-type{font-size:11px;line-height:2;color:#c3cfbd}.visit-card>b{position:absolute;right:23px;top:28px;color:#c0cda8;font-size:22px;font-weight:400}.visit-note{text-align:center;margin-top:23px;font-size:10px;line-height:1.8;color:#c4cdb6}
.us-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:90px 0 77px;align-items:center}.us-heading h2{font:34px/1.7 var(--serif);font-weight:400;letter-spacing:1px;margin:19px 0}.us-heading h2 em{font-size:27px;font-style:normal;color:#768364}.us-heading>p{font-size:12px;color:var(--muted);line-height:2}.name-strip{display:flex;gap:18px;align-items:center;margin-top:27px;font:17px/1.7 var(--serif);letter-spacing:1px}.name-strip i{font-size:12px;font-style:normal;color:#8c9a7c}.record-note{position:relative;background:#ede8d8;border:1px solid #dad6bf;border-radius:3px;padding:39px 34px;transform:rotate(1deg);box-shadow:0 7px 20px #4e52360a}.record-note:before{content:"";position:absolute;top:-10px;left:calc(50% - 30px);width:60px;height:24px;background:#b6bd9c69;transform:rotate(-7deg)}.record-note-mark{position:absolute;right:20px;top:15px;font:70px/1 Georgia,serif;color:#7e8b6026}.record-note-label{font-size:11px;letter-spacing:1px;color:#737758}.record-note h3{font:24px/1.8 var(--serif);font-weight:400;margin:13px 0}.record-note>p:not(:first-of-type){font-size:12px;line-height:2.1;color:#656c56;margin-bottom:13px}.note-signature{display:block;margin-top:24px;padding-top:15px;border-top:1px dashed #b5b89d;color:#77795c;font-size:10px}
.note-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px 50px;padding:30px 0 65px;border-top:1px solid var(--line)}.note-section h2{font:27px/1.8 var(--serif);font-weight:400;margin:13px 0}.note-section>div>p:not(.eyebrow){font-size:12px;color:var(--muted)}.note-form{padding-top:6px}.note-form label{display:block;font-size:11px;margin-bottom:9px;color:#5c6b57}.note-form textarea{display:block;resize:vertical;min-height:115px;max-height:400px;width:100%;border:1px solid #bfc9b2;border-radius:6px;background:#fbf8f1;padding:16px 18px;font-size:13px;line-height:1.9;color:var(--ink)}.note-form textarea::placeholder{color:#858a75}.note-form-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:12px}.note-form-bottom>span{font:10px/1.5 Georgia,serif;color:#6a765f}.note-form-bottom .button{padding:9px 16px;min-height:41px}.local-note{font-size:10px;color:#69735f;line-height:1.9;margin-top:12px}#note-status{font-size:11px;line-height:1.8;color:#4f6a42;min-height:22px;margin-top:3px}.notes-area{grid-column:1/-1;padding-top:15px}.notes-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.notes-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.saved-note{border:1px solid #d7d7c1;background:#eeeddf;border-radius:4px;padding:19px 20px;min-width:0}.saved-note p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:2}.saved-note time{display:block;color:#697360;font-size:10px;margin-top:19px}
.site-footer{display:flex;align-items:center;gap:30px;padding:28px 0 35px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.footer-brand{display:flex;gap:10px;align-items:center;font-family:var(--serif);font-size:15px;letter-spacing:1px;margin-right:auto;color:var(--ink)}.footer-brand svg{width:22px;height:22px;color:#7b8f65}.site-footer button{background:none;border:0;color:var(--muted);font-size:10px;padding:8px 0;min-height:38px}.back-top{display:grid;place-items:center;width:36px;height:36px;border:1px solid #bcc7ae;border-radius:50%;font-size:17px}
.space-letter-overlay{position:fixed;inset:0;z-index:24;display:flex;align-items:center;justify-content:center;padding:16px;background:#182d26d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.space-letter-book{display:flex;flex-direction:column;width:min(100%,620px);height:min(100%,870px);border:1px solid #dfdcc9;background:#f6f1e5;border-radius:15px;box-shadow:0 20px 90px #0d231755;overflow:hidden}.space-letter-book>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 24px;border-bottom:1px solid #dcdac5;flex-shrink:0}.space-letter-book>header button{display:grid;place-items:center;border:1px solid #bcc7ac;background:none;border-radius:50%;width:34px;height:34px;font-size:24px;line-height:1;color:#52664b}.space-letter-scroll{overflow-y:auto;min-height:0;flex:1;padding:32px 36px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.letter-heart{display:block;text-align:center;font:36px/1.5 Georgia,serif;color:#9b855b}.space-letter-scroll h2{font:25px/1.8 var(--serif);font-weight:400;letter-spacing:1px;text-align:center;margin:9px 0 25px}.space-letter-scroll p{font-size:13px;line-height:2.15;margin:0 0 21px;overflow-wrap:anywhere;color:#43533b}.space-letter-scroll .promise{padding:16px 0;border-top:1px solid #cbd0b5;border-bottom:1px solid #cbd0b5;color:#3c5a34;font-size:14px}.space-letter-scroll .signature{text-align:right;font-size:12px;margin-top:25px}.space-letter-scroll .letter-context{font-size:10px;color:#6b735e;text-align:center;margin:32px 0 0}.space-letter-book>footer{display:flex;align-items:center;justify-content:center;gap:22px;border-top:1px solid #dcdac5;padding:13px 20px;flex-shrink:0}.space-letter-book>footer .button{font-size:11px;min-height:40px;padding:8px 14px}
html.dialog-open{overflow:hidden}body.dialog-open{position:fixed;width:100%;left:0;overflow:hidden}html.effects-paused #scene *,html.effects-paused #scene *:before,html.effects-paused #scene *:after{animation-play-state:paused!important}.memory-overlay,.talk-overlay,.return-overlay{background:#142a24ed}.memory-book,.talk-book,.return-book{background:radial-gradient(ellipse at 30% 0%,#344c3f,#192d26 62%,#14261f);color:#eee7d5}.memory-book .memory-stage{background:#0c1b16}.memory-book .memory-thumb{background:#14261f}.talk-composer,.return-footer{background:#14291ed9}.memory-book,.talk-book,.return-book{max-height:calc(100dvh - 28px)}.space-letter-book{max-height:calc(100dvh - 32px)}
@keyframes soft-light{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:.9;transform:scale(1.2)}}@keyframes pet-hello{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero{gap:100px;padding-top:80px;padding-bottom:95px;min-height:780px}.hero h1{font-size:74px}.hero-art{max-width:490px}}
@media(max-width:1050px){.page-width{width:calc(100% - 64px)}.site-header{width:calc(100% - 54px);gap:24px}.header-note{display:none}.top-nav{gap:25px}.hero{gap:30px;min-height:650px}.hero h1{font-size:53px}.hero-art{padding-right:12px;padding-left:5px}.pet-stamp{right:-4px;width:82px;height:82px;font-size:18px}.pet-stamp span{font-size:6px}.hero-actions{gap:18px}.hero-actions .button{padding:12px 16px;gap:15px}.hero-actions .text-link{gap:8px;font-size:11px}.resident{padding:23px 17px;gap:12px;flex-direction:column}.resident-symbol,.resident-portrait{width:42px;height:42px}.resident h3{font-size:23px}.resident p{font-size:11px}.story-layout{grid-template-columns:190px 1fr;gap:22px}.story-panel{gap:20px;padding:17px;grid-template-columns:.8fr 1fr}.story-panel figure{height:300px}.story-panel h3{font-size:21px}.visit-card{padding:24px 20px 28px}.visit-card strong{font-size:19px}.visit-label{font-size:7px;letter-spacing:1.1px}.us-section{gap:45px}.record-note{padding:30px 26px}.note-section{gap:30px}.section-heading h2{font-size:30px}}
@media(max-width:760px){html{scroll-padding-top:25px}.page-width{width:calc(100% - 40px)}.site-header{height:82px;width:calc(100% - 36px);gap:12px}.brand{font-size:20px;gap:9px;letter-spacing:2px}.brand-mark{width:37px;height:37px}.brand-mark svg{width:23px;height:23px}.brand small{font-size:8px;margin-top:3px;letter-spacing:1.5px}.top-nav{gap:14px;font-size:10px}.top-nav a{padding:13px 0}.hero{grid-template-columns:1fr;gap:32px;padding-top:40px;padding-bottom:47px;min-height:0}.hero-copy{text-align:center}.hero-copy .eyebrow{justify-content:center;font-size:9px;letter-spacing:1.6px}.hero h1{font-size:47px;line-height:1.4;letter-spacing:2px;margin:22px 0}.hero-description{font-size:12px;line-height:2.1}.hero-actions{justify-content:center;gap:22px;margin-top:25px}.hero-actions .button{padding:12px 17px;font-size:11px}.hero-actions .text-link{font-size:11px}.hero-meta{justify-content:center;margin-top:26px;font-size:10px;text-align:left}.hero-meta small{font-size:9px}.avatar-stack i,.avatar-stack img{width:29px;height:29px}.hero-art{justify-self:center;width:min(100%,355px);padding:20px 26px 0 23px}.portrait-frame{padding:10px 10px 17px}.portrait-frame figcaption{margin-top:14px}.portrait-frame figcaption b{font-size:16px}.portrait-frame figcaption small{font-size:9px}.portrait-frame figcaption>span{font-size:7px;letter-spacing:1.7px}.pet-stamp{right:0;top:32px;width:76px;height:76px;font-size:17px}.pet-touch{left:6px;bottom:-7px;font-size:10px;padding:9px 14px;gap:8px}.pet-touch svg{width:21px;height:21px}.pet-message{bottom:55px;left:2px;right:13px;font-size:11px}.orbit{inset:3px 15px -3px 5px}.orbit-two{inset:30px 0 13px 13px}.s1{left:3px;font-size:30px;top:42px}.s2{right:5px;font-size:22px;bottom:94px}.chapter-divider{gap:13px;padding:7px 0 32px;font-size:10px;letter-spacing:0}.chapter-divider span:last-child{font-size:7px;letter-spacing:.5px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:27px;letter-spacing:.5px;line-height:1.65;margin-top:10px}.section-heading .eyebrow{font-size:9px;letter-spacing:1.3px}.section-heading>p{font-size:11px;line-height:1.9;margin-top:13px}.section-heading>p br{display:none}.residents{padding:15px 0 46px}.resident-grid{gap:10px;grid-template-columns:1fr}.resident{flex-direction:row;align-items:center;padding:18px 19px;gap:18px}.resident h3{font-size:22px;line-height:1.4;margin-top:2px}.resident p{font-size:11px;line-height:1.8;margin-top:7px}.resident-symbol,.resident-portrait{width:51px;height:51px}.resident-tag{font-size:8px}.resident-number{font-size:77px;bottom:-7px;right:15px}.story-section{padding:43px 0 46px}.story-layout{display:block}.story-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px 15px;margin-bottom:21px;padding:0}.story-tabs button{padding:11px 0;gap:9px;font-size:10px;min-height:47px}.story-tabs button i{font-size:12px}.story-panel{display:flex;flex-direction:column;gap:19px;padding:18px}.story-panel figure{width:100%;height:245px;margin:0;border-width:6px}.story-panel .story-text{padding:3px 2px 5px;width:100%}.story-panel h3{font-size:23px;line-height:1.7;margin:11px 0}.story-panel p{font-size:12px;line-height:2;margin-bottom:13px}.story-panel p.story-after{font-size:11px}.story-index{font-size:8px}.album-section{padding:45px 0 47px}.album-toolbar{display:block;margin:0 0 23px}.album-filters{gap:5px}.album-filters button{padding:7px 10px;min-height:35px;font-size:10px}.album-toolbar #grid-count{display:block;margin-top:12px;font-size:10px}.memory-grid{grid-template-columns:1fr 1fr;gap:25px 13px}.photo-card .photo-wrap{padding:6px;aspect-ratio:.85}.photo-copy{padding:11px 2px 0}.photo-copy b{font-size:12px;line-height:1.7}.photo-copy small{font-size:10px;line-height:1.85;margin-top:4px}.photo-copy .photo-number{font-size:8px;letter-spacing:.8px;margin-top:8px}.photo-kind{top:14px;left:12px;font-size:8px;padding:3px 6px}.photo-card .photo-wrap:after{width:24px;height:24px;right:13px;bottom:13px;font-size:14px}.album-more{margin-top:28px;gap:22px}.album-more .button{font-size:11px;padding:10px 18px}.album-more .text-link{font-size:11px}.visit-section{padding:42px 0 35px}.visit-grid{grid-template-columns:1fr;gap:12px}.visit-card{padding:22px 21px 23px;min-height:0;display:grid;grid-template-columns:41px 1fr;column-gap:17px}.visit-icon{grid-row:1/4;margin:7px 0 0;font-size:31px;align-self:start}.visit-label{font-size:7px;letter-spacing:1.4px}.visit-card strong{font-size:22px;margin:6px 0 9px;line-height:1.6}.visit-card>span:last-of-type{font-size:11px;line-height:1.9}.visit-card>b{top:23px;right:18px;font-size:21px}.visit-note{font-size:9px;line-height:1.9;margin-top:20px;padding:0 6px}.us-section{grid-template-columns:1fr;gap:30px;padding:47px 0}.us-heading h2{font-size:31px;margin:14px 0 17px;line-height:1.7}.us-heading h2 em{font-size:24px}.us-heading>p{font-size:12px}.name-strip{margin-top:23px;font-size:16px}.record-note{margin:0 4px;padding:28px 24px}.record-note h3{font-size:23px}.record-note>p:not(:first-of-type){font-size:12px}.note-section{grid-template-columns:1fr;padding:33px 0 38px;gap:22px}.note-section h2{font-size:25px;margin:12px 0}.note-section>div>p:not(.eyebrow){font-size:11px}.note-form{padding:0}.note-form textarea{font-size:16px;padding:13px 14px;min-height:120px}.local-note{font-size:10px}.notes-list{grid-template-columns:1fr}.site-footer{gap:12px;flex-wrap:wrap;padding:23px 0 28px}.footer-brand{font-size:13px;gap:8px;width:calc(100% - 50px);order:0}.site-footer>span{order:2;font-size:9px;flex:1}.site-footer button{order:3;font-size:9px;min-height:35px}.back-top{order:1;width:31px;height:31px;font-size:15px}.space-letter-overlay{padding:10px}.space-letter-book{max-height:calc(100dvh - 20px);border-radius:12px}.space-letter-book>header{padding:13px 18px}.space-letter-book>header .eyebrow{font-size:8px;letter-spacing:1.3px}.space-letter-scroll{padding:22px 21px}.space-letter-scroll h2{font-size:23px;margin-bottom:23px}.space-letter-scroll p{font-size:12px;line-height:2.15;margin-bottom:19px}.space-letter-scroll .promise{font-size:13px}.space-letter-book>footer{padding:10px 13px;gap:18px}.space-letter-book>footer .text-link{font-size:11px}.memory-book,.talk-book,.return-book{max-height:calc(100dvh - 28px)}}
@media(max-width:360px){.page-width{width:calc(100% - 32px)}.site-header{width:calc(100% - 28px)}.brand{font-size:18px;gap:7px}.brand-mark{width:32px;height:32px}.top-nav{gap:10px;font-size:9px}.hero h1{font-size:43px}.hero-art{width:300px}.hero-actions{gap:16px}.hero-actions .button{padding:11px 13px;gap:12px}.hero-actions .text-link{font-size:10px}.section-heading h2{font-size:24px}.album-filters button{padding:6px 8px;font-size:9px}.photo-copy b{font-size:11px}.visit-card strong{font-size:20px}.visit-card{gap:12px;grid-template-columns:33px 1fr}.note-form-bottom .button{font-size:10px;gap:12px}.site-footer .footer-brand{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.memory-thumbnails{scroll-behavior:auto}}


.journal-section{padding:70px 0 65px;border-top:1px solid var(--line,#ddd9ce)}.journal-section .section-heading{margin-bottom:28px}.journal-intro{max-width:600px}.journal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.journal-filters{display:flex;flex-wrap:wrap;gap:7px}.journal-filters button{border:1px solid #d6dbd0;background:transparent;border-radius:30px;padding:9px 17px;min-height:40px;color:#516052;font:inherit;font-size:12px;cursor:pointer}.journal-filters button[aria-pressed=true]{background:#294e3f;color:#fff;border-color:#294e3f}.journal-filters button:focus-visible,.journal-card summary:focus-visible{outline:2px solid #92732e;outline-offset:4px}.journal-count{font-size:11px;color:#667064}.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}.journal-card{min-width:0;background:#fcfaf5;border:1px solid #dddcd0;border-radius:6px;padding:28px 30px;box-shadow:0 5px 15px #33463204}.journal-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#68775d;font-size:11px}.journal-meta>span{border-bottom:1px solid #c8cfb9;padding-bottom:3px}.journal-meta>time{font-variant-numeric:tabular-nums;letter-spacing:1px;font-size:10px;color:#7d8075}.journal-card h3{font-family:'Songti SC',SimSun,serif;font-weight:500;font-size:25px;line-height:1.65;margin:18px 0 12px;color:#294e3f}.journal-card>p{font-size:13px;line-height:2;color:#636a5f;margin:0 0 18px}.journal-card summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px;padding:13px 0 2px;border-top:1px dashed #d2d8ca;color:#385342;min-height:42px}.journal-card summary::-webkit-details-marker{display:none}.journal-card summary span{font-size:18px;transition:transform .2s}.journal-card details[open] summary span{transform:rotate(45deg)}.chat-excerpt{margin-top:19px}.excerpt-label{display:block;font-size:10px;color:#8b8e7d;line-height:1.9;margin-bottom:18px}.chat-line{margin:0 28px 13px 0}.chat-line.from-jie{margin:0 0 13px 28px}.chat-speaker{display:flex;align-items:center;gap:10px;margin-bottom:5px;color:#697563;font-size:10px}.chat-speaker b{font-weight:500}.chat-speaker time{font-size:9px;color:#92988a;font-variant-numeric:tabular-nums}.from-jie .chat-speaker{justify-content:flex-end}.chat-line p{background:#eef0e7;color:#344a3b;border-radius:2px 12px 12px;padding:12px 14px;font-size:13px;line-height:1.95;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.from-jie p{background:#e4e9dc;border-radius:12px 2px 12px 12px}.excerpt-note{font-size:10px;line-height:1.95;color:#7c8274;margin:18px 0 5px}.chat-excerpt>.text-link{margin-top:12px;font-size:11px}.chat-video{margin:20px 0 0}.chat-video video{width:100%;max-height:420px;display:block;object-fit:contain;background:#15251c;border-radius:5px;aspect-ratio:4/3}.chat-video figcaption{font-size:9px;color:#7c8274;margin-top:8px;line-height:1.8}.video-fallback{font-size:12px;line-height:1.8}.video-fallback a{color:#294e3f;text-decoration:underline}.journal-more{display:flex;justify-content:center;margin-top:28px}.record-context{font-size:11px;line-height:2;color:#7c8274;margin:25px 0 0;max-width:760px}.hero h1{font-size:61px}.brand{letter-spacing:1px}.brand small{letter-spacing:1.6px}.hero-meta small{max-width:230px}.journal-card[hidden]{display:none}
@media(max-width:1050px){.hero h1{font-size:47px}.journal-card{padding:23px}.journal-card h3{font-size:23px}.journal-toolbar{align-items:flex-start}.journal-count{padding-top:12px;white-space:nowrap}}
@media(max-width:760px){.hero h1{font-size:39px;letter-spacing:1px;line-height:1.65}.brand{font-size:18px;letter-spacing:.5px}.brand small{font-size:7px}.top-nav{gap:11px;font-size:9px}.journal-section{padding:43px 0}.journal-toolbar{display:block}.journal-filters{gap:5px}.journal-filters button{font-size:10px;padding:7px 11px;min-height:37px}.journal-count{display:block;margin-top:10px;padding:0;font-size:10px}.journal-grid{grid-template-columns:1fr;gap:14px}.journal-card{padding:23px 21px}.journal-card h3{font-size:23px;margin-top:15px}.journal-card>p{font-size:12px}.journal-meta{font-size:10px}.journal-meta>time{font-size:9px}.chat-line p{font-size:13px}.record-context{font-size:10px}.chat-video video{max-height:340px}.hero-meta small{font-size:9px}}
.journal-section h2 em{display:inline-block}
@media(max-width:360px){.hero h1{font-size:35px}.brand{font-size:16px}.top-nav{gap:9px;font-size:8px}.journal-card{padding:21px 17px}.journal-card h3{font-size:21px}}

.character-stage{position:relative;width:100%;max-width:560px;min-width:0;align-self:center;justify-self:end;padding:33px 15px 19px;isolation:isolate}
.character-stage:before{content:"";position:absolute;z-index:-1;inset:28px 0 47px;background:linear-gradient(160deg,#e4e9d9,#e9e5d4 75%,#e3dfc8);border:1px solid #c4ccb6;border-radius:48% 48% 10px 10px;box-shadow:inset 0 0 0 10px #f5f0e877,0 15px 35px #354b300b}
.character-stage:after{content:"";position:absolute;z-index:-1;bottom:91px;height:53px;left:16px;right:16px;background:#a6b69522;border-radius:50%}
.stage-eyebrow{display:block;text-align:center;font:8px/1.6 Georgia,serif;letter-spacing:1.7px;color:#7c8069;margin:15px 0 31px}
.character-lineup{display:grid;grid-template-columns:1fr .8fr 1fr;align-items:end;gap:0;position:relative;padding:0 0 14px}
.character{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;border:0;background:transparent;padding:0 0 6px;border-radius:20px;outline-offset:1px!important}
.character img{width:100%;height:300px;object-fit:contain;object-position:bottom;filter:drop-shadow(1px 3px 0 #fff9e8aa);transform-origin:50% 93%;transition:transform .25s ease}
.character-qiuqiu{margin-left:0;margin-right:0;z-index:2}.character-qiuqiu img{height:158px;margin-bottom:1px}
.character>span{font:15px/1.8 var(--serif);letter-spacing:3px;margin-top:5px;display:block;border-bottom:1px solid #a8b69c;padding:0 8px 3px}
.character:hover img{transform:translateY(-4px) rotate(-1deg)}.character[aria-expanded="true"]>span{color:#8b6747;border-color:#aa8657}.character[aria-expanded="true"] img{transform:translateY(-4px)}
.stage-caption{text-align:center;margin-top:8px}.stage-caption>span{font:18px/1.8 var(--serif);letter-spacing:2px}.stage-caption>small{display:block;color:var(--muted);font-size:10px;letter-spacing:1px;margin-top:4px}
.character-speech{position:absolute;z-index:5;left:7px;right:7px;top:8px;background:#fffaf0;border:1px solid #a7b598;border-radius:16px;box-shadow:0 9px 25px #2b453224;padding:17px 33px 14px 18px;text-align:left;color:var(--ink)}
.character-speech:after{content:"";position:absolute;bottom:-7px;left:var(--speech-tail,50%);width:12px;height:12px;background:#fffaf0;transform:rotate(45deg);border-right:1px solid #a7b598;border-bottom:1px solid #a7b598}
.character-speech>span{font-size:10px;color:#7b805f;letter-spacing:2px}.character-speech>p{font:18px/1.7 var(--serif);letter-spacing:.6px;margin:5px 0}.character-speech>small{font-size:9px;line-height:1.8;color:var(--muted);display:block}.character-speech>button{position:absolute;right:6px;top:4px;width:32px;height:32px;padding:0;display:grid;place-items:center;border:0;background:transparent;font-size:22px;color:#7b806d;border-radius:50%}.character-speech>button:hover{background:#e8ebdc}
.future-section{padding:10px 0 68px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;border-top:1px solid var(--line)}.future-section .eyebrow{margin-top:25px}.future-section h2{font:30px/1.8 var(--serif);font-weight:400;letter-spacing:2px;margin-top:14px}.future-entry{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:30px 0 0;padding:23px 29px;border:1px solid #c8ccb9;background:#faf6ec;border-radius:8px;box-shadow:4px 5px 0 #e5e3d3;text-align:left;color:#687760;transition:background .2s}.future-entry:hover{background:#fdfbf5}.future-entry>span:last-child{font-size:12px;letter-spacing:1px}.future-entry i{font-style:normal;margin-left:13px}.future-page{display:block;width:47px;height:60px;background:#fffdf5;border:1px solid #c8cfb8;border-radius:2px;transform:rotate(-6deg);box-shadow:3px 3px 0 #e4e6d7;flex-shrink:0}
.future-overlay{position:fixed;inset:0;z-index:1000;background:#e6e3d8;padding:24px;overflow:auto}.future-sheet{position:relative;width:min(850px,100%);min-height:calc(100dvh - 48px);margin:auto;border:1px solid #d2d2c2;background:#fffdf6;box-shadow:0 10px 40px #2f443714}.future-blank-paper{min-height:calc(100dvh - 50px)}#future-close{position:absolute;top:17px;left:20px;background:#fffdf6;border:1px solid #d5d8c8;border-radius:6px;color:#63725b;font-size:12px;padding:8px 13px;min-height:44px}
@media(min-width:1100px){.hero{grid-template-columns:1fr 1fr;gap:45px}.character-stage{padding-left:8px;padding-right:8px}.character img{height:330px}.character-qiuqiu img{height:175px}}
@media(min-width:769px) and (max-width:1099px){.hero{gap:25px}.character img{height:260px}.character-qiuqiu img{height:138px}.stage-eyebrow{font-size:7px;letter-spacing:.8px}.stage-caption>span{font-size:16px}.character-speech>p{font-size:16px}.character-speech{left:0;right:0}}
@media(max-width:768px){.character-stage{max-width:440px;width:100%;justify-self:center;padding:20px 7px 13px;margin-top:8px}.character-stage:before{inset:20px 0 46px}.stage-eyebrow{font-size:7px;letter-spacing:1.3px;margin:16px 0 27px}.character img{height:285px}.character-qiuqiu img{height:152px}.character>span{font-size:14px}.stage-caption{margin-top:4px}.stage-caption>span{font-size:17px}.stage-caption>small{font-size:10px}.character-speech{top:0;left:3px;right:3px;padding:12px 31px 11px 14px}.character-speech>p{font-size:16px}.character-speech>small{font-size:9px}.future-section{grid-template-columns:1fr;gap:0;padding:4px 0 43px}.future-section h2{font-size:25px;margin-top:10px}.future-entry{margin-top:21px;padding:21px 25px}.future-overlay{padding:12px}.future-sheet{min-height:calc(100dvh - 24px)}.future-blank-paper{min-height:calc(100dvh - 26px)}#future-close{top:12px;left:12px}}
@media(max-width:390px){.character img{height:242px}.character-qiuqiu img{height:130px}.stage-eyebrow{font-size:6px;letter-spacing:1px}.character-stage{padding-left:3px;padding-right:3px}.character-lineup{padding-bottom:10px}.stage-caption>span{font-size:16px}.character-speech>p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.character img{transition:none}.character:hover img,.character[aria-expanded="true"] img{transform:none}}
.avatar-stack img{width:40px;height:40px;object-position:center;border-color:var(--paper)}.avatar-stack img:first-child{margin-left:0}
.resident{align-items:center;min-height:132px}.resident-portrait{width:64px;height:64px;object-position:center;margin-top:0;border:2px solid #fffaf0}.resident h3{margin-top:0}
@media(min-width:761px) and (max-width:1050px){.resident{align-items:flex-start;min-height:157px}.resident-portrait{width:54px;height:54px}}
@media(max-width:760px){.avatar-stack img{width:34px;height:34px}.resident{min-height:100px}.resident-portrait{width:56px;height:56px}}
