:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#35251c;background:#fbf8f2;--paper: #fbf8f2;--paper-warm: #f4ece3;--ink: #372419;--muted: #8b7a6e;--soft: rgba(117, 88, 63, .12);--line: rgba(196, 156, 116, .56);--accent: #df8f52;--accent-deep: #bc6b35;--tab: rgba(255, 255, 255, .88);--radius-xl: 1.65rem;--radius-lg: 1.2rem;--radius-md: .9rem;--shadow-photo: 0 1.25rem 2.5rem rgba(59, 36, 18, .14)}*{box-sizing:border-box}html{min-width:320px;background:#eee9e2}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 16% 0%,rgba(228,184,133,.22),transparent 24rem),linear-gradient(180deg,#faf7f1,#f3ede5)}button{font:inherit;color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}img.lazy-media-image{opacity:1;transition:opacity .18s ease,transform .42s cubic-bezier(.2,.86,.26,1),filter .42s ease}img.lazy-media-image.pending{opacity:0}.lazy-media-shell{position:relative;display:block;width:100%;height:100%;overflow:hidden;background:linear-gradient(110deg,#efe3d8db 8%,#fffaf4f5 18%,#e7d7c7e0 33%),#efe3d8;background-size:220% 100%}.lazy-media-shell.loading{animation:lazyMediaSweep 1.35s ease-in-out infinite}.lazy-media-shell.error{background:#f4ece5eb}.lazy-media-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#5f48399e;pointer-events:none;transition:opacity .18s ease}.lazy-media-shell.ready .lazy-media-placeholder{opacity:0}.lazy-media-pulse{width:1.45rem;aspect-ratio:1;border-radius:999px;border:.18rem solid rgba(95,72,57,.12);border-top-color:#2a575b6b;animation:routeSpin .78s linear infinite}.lazy-media-static{width:1.45rem;aspect-ratio:1;border-radius:999px;background:#5f48391a}.lazy-media-state-text{border-radius:999px;background:#fffaf4d1;padding:.24rem .54rem;font-size:.72rem;font-weight:750}.photo-frame .lazy-media-shell,.secondary-shot .lazy-media-shell,.album-card .lazy-media-shell,.memory-card .lazy-media-shell{height:100%}.album-card .lazy-media-shell{height:8.25rem}.synced-album-card .lazy-media-shell{height:100%;min-height:8.9rem}.memory-card .lazy-media-shell{min-height:7.2rem}.route-loading-screen{display:grid;min-height:100vh;place-items:center;gap:.8rem;align-content:center;color:#5f4839;background:radial-gradient(circle at 50% 32%,rgba(223,143,82,.16),transparent 18rem),linear-gradient(180deg,#fbf8f2,#f2eadf)}.route-loading-screen p{margin:0;font-size:1rem;font-weight:700}.route-loading-mark{width:2.25rem;aspect-ratio:1;border:.22rem solid rgba(95,72,57,.16);border-top-color:#c86f36;border-radius:999px;animation:routeSpin .76s linear infinite}@keyframes routeSpin{to{transform:rotate(360deg)}}@keyframes lazyMediaSweep{0%{background-position:110% 0}to{background-position:-110% 0}}@keyframes pageLift{0%{opacity:0;transform:translateY(.7rem)}to{opacity:1;transform:translateY(0)}}@keyframes entryUnfold{0%{opacity:0;transform:translateY(1.05rem) scale(.985);filter:saturate(.86)}to{opacity:1;transform:translateY(0) scale(1);filter:saturate(1)}}@keyframes paperBreath{0%,to{box-shadow:0 0 #df8f5233;transform:scale(1)}48%{box-shadow:0 0 0 .38rem #df8f5200;transform:scale(1.08)}}@keyframes sunDrift{0%,to{transform:rotate(8deg) scale(1)}50%{transform:rotate(15deg) scale(1.05)}}@keyframes viewerVeil{0%{opacity:0}to{opacity:1}}@keyframes viewerPhotoIn{0%{opacity:0;transform:translateY(.55rem) scale(.975);filter:blur(.35rem) saturate(.86)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0) saturate(1)}}@keyframes indexPanelIn{0%{opacity:0;transform:translateY(.7rem) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes signOutSweep{0%{transform:translate(-115%)}50%{transform:translate(80%)}to{transform:translate(238%)}}.app-shell{min-height:100vh;display:flex;justify-content:center;align-items:stretch;padding:0}.cloud-auth-shell{min-height:100vh;display:grid;place-items:center;padding:1.25rem;background:linear-gradient(180deg,#fbf8f2e6,#f3ede5f5),#f5efe7}.cloud-auth-panel{width:min(100%,26rem);border:1px solid rgba(170,126,89,.26);border-radius:8px;background:#fffdf8f5;box-shadow:0 1.25rem 3rem #412a191f;padding:1.4rem}.cloud-auth-head{display:grid;gap:.55rem;margin-bottom:1.15rem}.cloud-auth-head svg{width:2.1rem;height:2.1rem;color:#bc6b35}.cloud-auth-head h1{margin:0;color:#2d160c;font-size:1.55rem;letter-spacing:0}.cloud-auth-head p,.cloud-auth-message{margin:0;color:#776456;line-height:1.6}.cloud-login-form{display:grid;gap:.85rem}.cloud-login-form label{display:grid;gap:.38rem;color:#4a3528;font-weight:700}.cloud-login-form input{width:100%;min-height:2.8rem;border:1px solid rgba(156,112,76,.34);border-radius:8px;background:#fffaf3;color:#35251c;font:inherit;padding:0 .9rem}.cloud-login-form input:focus{border-color:#bc6b35;outline:3px solid rgba(188,107,53,.18)}.cloud-login-form button,.cloud-signout-button{border:0;cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease}.cloud-login-form button{min-height:2.85rem;border-radius:8px;background:#33666a;color:#fffdf8;font-weight:800}.cloud-login-form button:disabled{cursor:not-allowed;opacity:.58}.cloud-login-form button:not(:disabled):active,.cloud-signout-button:active{transform:translateY(.04rem) scale(.98)}.cloud-auth-message{margin-top:.9rem;color:#9c3c2f}.cloud-signing-out-panel{overflow:hidden}.cloud-signing-out-indicator{position:relative;height:.26rem;border-radius:999px;background:#33666a21}.cloud-signing-out-indicator:after{content:"";position:absolute;inset:0 auto 0 0;width:42%;border-radius:inherit;background:#33666a;animation:signOutSweep .82s ease-in-out infinite}.phone-canvas{position:relative;width:min(100vw,430px);min-height:100vh;background:radial-gradient(circle at 80% 7%,rgba(255,255,255,.9),transparent 7.5rem),linear-gradient(180deg,var(--paper) 0%,#f8f2ea 62%,#f3ebe2 100%);overflow-x:hidden}.phone-canvas:before{content:"";position:fixed;top:0;left:50%;width:min(100vw,430px);height:7.5rem;transform:translate(-50%);pointer-events:none;background:linear-gradient(180deg,#fbf8f2f5,#fbf8f200);z-index:4}.app-header{position:relative;z-index:5;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:max(1.55rem,env(safe-area-inset-top)) 1.35rem .45rem;animation:pageLift .52s cubic-bezier(.2,.86,.26,1) both}.cloud-signout-button{display:inline-flex;align-items:center;gap:.28rem;min-height:2rem;border-radius:999px;background:#33666a1a;color:#31595d;padding:0 .74rem;font-size:.88rem;font-weight:800}.cloud-signout-button:hover{background:#33666a29}.cloud-signout-button:disabled{cursor:wait;opacity:.66}.cloud-signout-button svg{width:1rem;height:1rem}.brush-title{display:flex;align-items:center;gap:.35rem}.brush-title h1{margin:0;font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:2.08rem;font-weight:700;line-height:1;letter-spacing:0;color:#2d160c}.brush-title svg{color:#e7a05f;width:1.55rem;height:1.55rem;transform:rotate(8deg);transform-origin:48% 52%;animation:sunDrift 4.8s ease-in-out .9s infinite}.season-pill,.memory-tag{border:0;display:inline-flex;align-items:center;gap:.35rem;min-height:1.92rem;border-radius:999px;background:#e4d8cdc2;color:#4a3528;padding:0 .82rem;font-size:.92rem}.season-pill{margin-top:.72rem;transition:transform .18s ease,background .18s ease}.season-pill:active{transform:translateY(.04rem) scale(.98)}.memory-tag svg{width:1rem;height:1rem;color:var(--accent-deep)}.tab-item,.photo-frame,.secondary-shot,.album-card,.memory-card,.viewer-button,.viewer-close,.viewer-nav,.viewer-actions button{-webkit-tap-highlight-color:transparent}.content-stage{position:relative;z-index:1;padding:.2rem 0 7.5rem}.mobile-empty-state{display:grid;align-content:center;justify-items:start;min-height:24rem;margin:.25rem 1.2rem 7.5rem;border:1px solid rgba(188,107,53,.12);border-radius:1.35rem;background:linear-gradient(145deg,#fffcf7e6,#f4ece2c2),var(--paper);box-shadow:0 1rem 2.2rem #462d1714;padding:1.25rem;animation:pageLift .42s cubic-bezier(.2,.86,.26,1) both}.mobile-empty-state svg{width:2.2rem;height:2.2rem;color:var(--accent-deep)}.mobile-empty-state h2{margin:.95rem 0 0;color:var(--ink);font-size:1.25rem;line-height:1.25}.mobile-empty-state p{margin:.52rem 0 0;color:var(--muted);font-size:.92rem;line-height:1.48}.sync-brief{position:relative;margin:.2rem 1.2rem 1.05rem;border:1px solid rgba(188,107,53,.13);border-radius:1.35rem;background:radial-gradient(circle at 88% 0%,rgba(255,255,255,.9),transparent 6.6rem),linear-gradient(135deg,#fffaf4f0,#f4ebe0d1);box-shadow:0 1rem 2.4rem #462d1717;padding:1rem;animation:pageLift .5s cubic-bezier(.2,.86,.26,1) both}.sync-brief-close{position:absolute;top:.78rem;right:.78rem;width:2rem;height:2rem;border:1px solid rgba(117,88,63,.1);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff94;color:#775f4c;padding:0;transition:transform .18s ease,background .18s ease}.sync-brief-close svg{width:.92rem;height:.92rem}.sync-brief-close:active{transform:scale(.94);background:#ffffffd1}.sync-brief-head span,.album-card em,.memory-card em{display:inline-flex;width:fit-content;align-items:center;gap:.32rem;border-radius:999px;background:#638c6521;color:#4f8054;padding:.18rem .54rem;font-size:.72rem;font-style:normal;font-weight:760}.sync-brief-head svg{width:.9rem;height:.9rem}.sync-brief-head strong{display:block;margin-top:.52rem;color:#312015;font-size:1.15rem;line-height:1.28}.sync-brief-head p{margin:.28rem 0 0;color:#6b5545;font-size:.82rem;line-height:1.42}.sync-stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.85rem}.sync-stat-row span{border:1px solid rgba(117,88,63,.1);border-radius:.95rem;background:#ffffff8a;padding:.58rem}.sync-stat-row strong,.sync-stat-row small{display:block}.sync-stat-row strong{color:var(--accent-deep);font-size:1.16rem;line-height:1}.sync-stat-row small{margin-top:.24rem;color:var(--muted);font-size:.72rem}.sync-brief-action{width:100%;min-height:2.9rem;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.85rem;background:#b96735;color:#fffaf4;font-weight:720;box-shadow:0 .78rem 1.6rem #b967352e;transition:transform .18s ease,background .18s ease}.sync-brief-action svg{width:1.05rem;height:1.05rem}.sync-brief-action:active{transform:translateY(.06rem) scale(.985);background:#a95d31}.timeline-view{position:relative;padding:0 1.1rem .5rem .75rem;animation:pageLift .44s cubic-bezier(.2,.86,.26,1) both}.timeline-block{position:relative}.year-divider,.timeline-entry{scroll-margin-top:6rem}.year-divider{display:grid;grid-template-columns:4.35rem minmax(0,1fr);gap:.85rem;padding:.65rem 0 .2rem}.year-divider-mark{grid-column:2;display:inline-flex;width:fit-content;align-items:baseline;gap:.62rem;border:1px solid rgba(185,145,105,.2);border-radius:999px;background:#ffffff94;color:#4b2e1b;padding:.42rem .72rem;box-shadow:0 .6rem 1.6rem #4b2f180f}.year-divider-mark strong{font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1.35rem;line-height:1}.year-divider-mark span{color:var(--muted);font-size:.76rem;white-space:nowrap}.timeline-rail{position:absolute;left:4.78rem;top:1.4rem;bottom:3rem;width:1px;background:repeating-linear-gradient(to bottom,rgba(184,147,110,.55) 0 .9rem,transparent .9rem 1.35rem)}.timeline-entry{position:relative;display:grid;grid-template-columns:4.35rem minmax(0,1fr);gap:.85rem;min-height:8rem;padding:.35rem 0 .9rem;animation:entryUnfold .56s cubic-bezier(.2,.86,.26,1) both;animation-delay:calc(var(--entry-index, 0) * 70ms)}.date-stamp{padding-top:1rem;color:#4b2e1b;font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif}.date-stamp strong,.date-stamp span{display:block}.date-stamp strong{font-size:1.43rem;line-height:1}.date-stamp span{margin-top:.42rem;font-size:.92rem}.timeline-dot{position:absolute;left:4.55rem;top:1.58rem;width:1.05rem;height:1.05rem;border-radius:999px;border:.12rem solid var(--paper);z-index:2;animation:paperBreath 3.8s ease-in-out infinite;animation-delay:calc(.42s + var(--entry-index, 0) * .18s);transform-origin:center}.dot-gold{background:#e8bc62}.dot-green{background:#aebd62}.dot-blue{background:#78b5bd}.dot-violet{background:#a59bc5}.dot-coral{background:#e58f7b}.dot-brown{background:#c69d74}.dot-rose{background:#d9899c}.story-body{position:relative;min-width:0}.photo-frame,.secondary-shot{position:relative;border:0;padding:0;background:#efe3d8;overflow:hidden;box-shadow:var(--shadow-photo);cursor:pointer;transition:transform .21s cubic-bezier(.2,.86,.26,1),box-shadow .21s ease,filter .21s ease;will-change:transform}.photo-frame img,.secondary-shot img,.album-card img,.memory-card img{transition:opacity .18s ease,transform .42s cubic-bezier(.2,.86,.26,1),filter .42s ease}.photo-frame:active,.secondary-shot:active{transform:translateY(.06rem) scale(.985) rotate(0);box-shadow:0 .72rem 1.45rem #3b241226}.photo-frame:active img,.secondary-shot:active img{transform:scale(1.035);filter:saturate(1.05)}.photo-frame{width:100%;border-radius:var(--radius-lg)}.photo-hero{aspect-ratio:2.2 / 1}.photo-left-photo{width:70%;aspect-ratio:1.82 / 1}.photo-right-photo{width:74%;aspect-ratio:2.2 / 1;margin-left:auto}.photo-beach{width:64%;aspect-ratio:1.95 / 1}.photo-duo,.photo-bottom,.photo-small{aspect-ratio:1.62 / 1}.photo-duo{width:48%;margin-left:27%}.photo-bottom{width:64%}.photo-small{width:42%}.secondary-shot{position:absolute;border-radius:1rem}.secondary-beach{right:.2rem;top:4.65rem;width:5.55rem;aspect-ratio:1 / 1}.secondary-duo{right:0;top:0;width:48%;aspect-ratio:1.27 / 1}.story-copy{margin-top:.56rem}.entry-left-photo .story-copy{position:static;width:100%;margin-top:.56rem}.entry-right-photo .story-copy{width:100%;margin-top:.56rem}.entry-beach .story-copy{position:static;width:100%;margin-top:.56rem}.entry-duo .story-copy{width:100%;margin-top:.56rem}.entry-bottom .story-copy{position:static;width:100%;margin-top:.56rem}.story-copy h2{margin:0;color:#3c291e;font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1rem;line-height:1.42;font-weight:600}.story-copy p{margin:.24rem 0 0;color:#604b3c;font-size:.78rem;line-height:1.36}.tag-row{display:flex;flex-wrap:wrap;gap:.42rem;margin-top:.5rem}.entry-left-photo .tag-row,.entry-beach .tag-row,.entry-bottom .tag-row{margin-top:.5rem}.memory-tag{min-height:1.72rem;padding:0 .6rem;font-size:.76rem;white-space:nowrap;background:#f2ece5e0}.list-view{padding:.15rem 1.2rem 7.5rem;animation:pageLift .42s cubic-bezier(.2,.86,.26,1) both}.section-note{margin:0 0 1rem;color:var(--muted);font-size:.95rem;line-height:1.45}.album-view{padding-top:.25rem}.album-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.album-stack{display:grid;gap:.82rem}.album-card,.memory-card{border:0;background:#ffffff9e;color:var(--ink);text-align:left;overflow:hidden;cursor:pointer;animation:entryUnfold .52s cubic-bezier(.2,.86,.26,1) both;animation-delay:calc(var(--entry-index, 0) * 80ms);transition:transform .21s cubic-bezier(.2,.86,.26,1),box-shadow .21s ease,background .21s ease}.album-card{min-height:12.2rem;border-radius:var(--radius-lg);box-shadow:0 .8rem 1.8rem #462d1714}.synced-album-card{display:grid;grid-template-columns:8.5rem minmax(0,1fr);min-height:8.9rem;border:1px solid rgba(188,107,53,.1);background:#fffcf7b8}.album-card:active,.memory-card:active{transform:translateY(.07rem) scale(.985);background:#ffffffc2}.album-card img{height:8.25rem}.synced-album-card img{height:100%;min-height:8.9rem}.album-card span,.memory-card span{display:grid;gap:.28rem;padding:.72rem}.album-card strong,.memory-card strong{font-size:1rem}.synced-album-card strong{font-size:1.04rem}.album-card small,.memory-card small{color:var(--muted);font-size:.82rem;line-height:1.36}.memories-view{display:grid;gap:.9rem}.memory-card{display:grid;grid-template-columns:7.2rem 1fr;gap:.2rem;min-height:7.2rem;border-radius:var(--radius-lg)}.memory-card em{background:#df8f5224;color:var(--accent-deep)}.memory-card img{min-height:7.2rem}.memory-story-view{display:grid;gap:.95rem;padding:.15rem 1.2rem 7.5rem;animation:pageLift .42s cubic-bezier(.2,.86,.26,1) both}.memory-story-back{display:inline-flex;width:fit-content;align-items:center;gap:.35rem;border:0;border-radius:999px;background:#fff7ede0;color:#79503a;padding:.48rem .78rem;font-size:.92rem;font-weight:760;box-shadow:0 .45rem 1.2rem #5f483914}.memory-story-back svg{width:1rem;height:1rem}.memory-story-cover{position:relative;min-height:18rem;overflow:hidden;border-radius:var(--radius-lg);background:#fffaf4b8;box-shadow:0 1.1rem 2.35rem #462d171f}.memory-story-cover .lazy-media-shell{height:18rem}.memory-story-cover img{height:100%}.memory-story-header{position:absolute;inset:auto 0 0;display:grid;gap:.42rem;padding:4.2rem 1rem 1.05rem;color:#fffaf5;background:linear-gradient(180deg,transparent 0%,rgba(44,29,20,.82) 62%,rgba(44,29,20,.92) 100%)}.memory-story-header em{width:fit-content;border-radius:999px;background:#fffaf42e;padding:.28rem .58rem;color:#fff7ea;font-size:.76rem;font-style:normal;font-weight:800}.memory-story-header h2{margin:0;font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1.55rem;line-height:1.22}.memory-story-header small,.memory-story-header p{margin:0;color:#fffaf4d1;line-height:1.42}.memory-story-header small{font-size:.82rem;font-weight:720}.memory-story-header p{font-size:.92rem}.memory-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.memory-story-photo{display:grid;gap:.28rem;min-width:0;border:0;border-radius:.8rem;background:transparent;color:#4b3328;padding:0;text-align:left;animation:entryUnfold .52s cubic-bezier(.2,.86,.26,1) both;animation-delay:calc(var(--entry-index, 0) * 45ms)}.memory-story-photo .lazy-media-shell{aspect-ratio:1;height:auto;border-radius:.8rem;box-shadow:0 .52rem 1.2rem #462d171a}.memory-story-photo img{height:100%}.memory-story-photo span{overflow:hidden;color:var(--muted);font-size:.72rem;font-weight:720;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.time-index-dock{position:fixed;left:50%;bottom:calc(5.35rem + env(safe-area-inset-bottom));z-index:12;width:min(100vw,430px);transform:translate(-50%);display:grid;justify-items:end;gap:.62rem;padding:0 1.1rem;pointer-events:none}.time-dock-actions,.time-index-trigger,.time-index-panel,.search-tools-panel,.ai-search-panel{pointer-events:auto}.time-dock-actions{display:grid;justify-items:end;gap:.5rem}.time-index-trigger{border:1px solid rgba(188,107,53,.16);min-height:3.1rem;border-radius:999px;display:inline-flex;align-items:center;gap:.38rem;background:#fffaf4e6;color:var(--accent-deep);padding:0 .95rem;box-shadow:0 .9rem 2.2rem #462d171f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:transform .19s cubic-bezier(.2,.86,.26,1),background .19s ease,box-shadow .19s ease}.time-index-trigger svg{width:1.28rem;height:1.28rem}.time-index-trigger span{font-size:.92rem}.time-index-trigger:active{transform:translateY(.08rem) scale(.96);background:#fff6ebf5}.search-tools-trigger{border-color:#2a575b2e;background:#f8fdf9eb;color:#2a575b}.search-tools-panel{width:min(18.2rem,calc(100vw - 2.2rem));border:1px solid rgba(42,87,91,.14);border-radius:1.25rem;background:radial-gradient(circle at 88% 0%,rgba(255,255,255,.92),transparent 6rem),#fffaf4f2;box-shadow:0 1.25rem 3rem #462d1729;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);padding:.52rem;animation:indexPanelIn .21s cubic-bezier(.2,.86,.26,1) both}.search-tool-option{width:100%;border:0;border-radius:.95rem;display:grid;grid-template-columns:2.45rem minmax(0,1fr);align-items:center;gap:.65rem;background:transparent;color:var(--ink);padding:.62rem;text-align:left;transition:transform .18s ease,background .18s ease}.search-tool-option+.search-tool-option{margin-top:.18rem}.search-tool-option svg{width:2.35rem;height:2.35rem;border-radius:999px;display:block;background:#2a575b14;color:#2a575b;padding:.58rem}.search-tool-option strong,.search-tool-option small{display:block}.search-tool-option strong{color:var(--ink);font-size:.92rem;line-height:1.2}.search-tool-option small{margin-top:.12rem;color:var(--muted);font-size:.75rem;line-height:1.25}.search-tool-option:active{transform:scale(.985);background:#2a575b0f}.ai-search-panel{width:min(19rem,calc(100vw - 2.2rem));border:1px solid rgba(42,87,91,.14);border-radius:1.25rem;background:radial-gradient(circle at 90% 0%,rgba(255,255,255,.92),transparent 6rem),#fffaf4f2;box-shadow:0 1.25rem 3rem #462d1729;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);padding:.88rem;animation:indexPanelIn .21s cubic-bezier(.2,.86,.26,1) both}.ai-search-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-bottom:.65rem}.ai-search-head strong{font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1.2rem;line-height:1}.ai-search-close{display:inline-grid;place-items:center;width:2rem;min-height:2rem;border:1px solid rgba(42,87,91,.12);border-radius:999px;background:#ffffffad;color:#6a5c52}.ai-search-field{display:grid;gap:.42rem}.ai-search-field span{color:var(--muted);font-size:.78rem}.ai-search-field input{width:100%;min-height:2.72rem;border:1px solid rgba(42,87,91,.13);border-radius:.85rem;outline:0;background:#ffffffbf;color:var(--ink);padding:0 .85rem;font-size:.9rem}.ai-search-field input:focus{border-color:#2a575b52;box-shadow:0 0 0 3px #2a575b17}.ai-search-submit{display:inline-flex;align-items:center;justify-content:center;gap:.38rem;width:100%;min-height:2.72rem;border:0;border-radius:.9rem;background:#2a575b;color:#fffdf8;margin-top:.65rem;font-size:.9rem;font-weight:800}.ai-search-submit svg{width:1.08rem;height:1.08rem}.ai-search-note{margin:.62rem 0 0;border-radius:.82rem;background:#2a575b14;color:#2a575b;padding:.6rem .7rem;font-size:.78rem;line-height:1.45}.ai-search-results{display:grid;gap:.48rem;margin-top:.62rem;max-height:min(19rem,48vh);overflow-y:auto;padding-right:.08rem}.ai-search-result{width:100%;border:1px solid rgba(42,87,91,.1);border-radius:.9rem;display:grid;grid-template-columns:3.35rem minmax(0,1fr);gap:.58rem;align-items:center;background:#ffffff94;color:var(--ink);padding:.42rem;text-align:left}.ai-search-result-thumb{display:block;width:3.35rem;aspect-ratio:1;overflow:hidden;border-radius:.72rem;background:#2a575b14}.ai-search-result-thumb img{width:100%;height:100%;object-fit:cover}.ai-search-result-copy{min-width:0;display:grid;gap:.18rem}.ai-search-result-copy strong,.ai-search-result-copy small{overflow:hidden;text-overflow:ellipsis}.ai-search-result-copy strong{white-space:nowrap;font-size:.84rem;line-height:1.22}.ai-search-result-copy small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#75685d;font-size:.72rem;line-height:1.28}.ai-search-result-tags{display:flex;flex-wrap:wrap;gap:.22rem}.ai-search-result-tags em{border-radius:999px;background:#c36f311a;color:#9b5e2b;padding:.1rem .36rem;font-style:normal;font-size:.66rem;line-height:1.25}.time-index-panel{width:min(18rem,calc(100vw - 2.2rem));border:1px solid rgba(188,107,53,.14);border-radius:1.25rem;background:radial-gradient(circle at 88% 0%,rgba(255,255,255,.9),transparent 6rem),#fffaf4f0;box-shadow:0 1.25rem 3rem #462d1729;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);padding:.9rem;animation:indexPanelIn .21s cubic-bezier(.2,.86,.26,1) both}.time-index-head{display:flex;align-items:baseline;justify-content:space-between;gap:.7rem;padding:0 .1rem .65rem}.time-index-head strong{font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1.22rem;line-height:1}.time-index-head span{color:var(--muted);font-size:.78rem}.time-index-groups{display:grid;gap:.6rem}.time-index-group{border-radius:.95rem;background:#ffffff8f;padding:.56rem}.time-index-year{width:100%;border:0;display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;background:transparent;padding:.1rem .06rem .52rem;text-align:left}.time-index-year strong{color:#3f2618;font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1.42rem;line-height:1}.time-index-year span{color:var(--muted);font-size:.76rem;white-space:nowrap}.time-index-months{display:flex;flex-wrap:wrap;gap:.42rem}.time-index-months button{border:0;min-height:2.05rem;border-radius:999px;background:#e4d8cdb8;color:#4a3528;padding:0 .72rem;font-size:.82rem;transition:transform .17s ease,background .17s ease}.time-index-months button:active{transform:scale(.96);background:#df8f5229}.tab-bar{position:fixed;left:50%;bottom:0;z-index:10;width:min(100vw,430px);transform:translate(-50%);display:grid;grid-template-columns:repeat(3,1fr);gap:.2rem;padding:.62rem 1.25rem calc(.62rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,#fbf8f2b8,#fffffff0);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-top:1px solid rgba(93,69,50,.08)}.tab-item{min-height:3.55rem;border:0;background:transparent;color:#83796f;border-radius:1.25rem;display:grid;justify-items:center;align-content:center;gap:.18rem;font-size:.9rem;transition:transform .19s cubic-bezier(.2,.86,.26,1),color .19s ease,background .19s ease}.tab-item svg{width:1.6rem;height:1.6rem;transition:transform .19s cubic-bezier(.2,.86,.26,1),opacity .19s ease}.tab-item.active{color:var(--accent-deep);background:#e89e5e21}.tab-item.active svg{transform:translateY(-.08rem) rotate(-2deg)}.tab-item:active{transform:translateY(.08rem) scale(.96)}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;grid-template-rows:auto 1fr auto;background:#100d0b;color:#fff;touch-action:pan-y pinch-zoom;animation:viewerVeil .18s ease both}.viewer-topbar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:max(1.4rem,env(safe-area-inset-top)) 1rem .7rem;background:linear-gradient(180deg,rgba(0,0,0,.62),transparent)}.viewer-button,.viewer-close,.viewer-nav,.viewer-actions button{border:0;color:#fff;background:#ffffff24;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;min-width:2.75rem;min-height:2.75rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;transition:transform .17s ease,background .17s ease,opacity .17s ease}.viewer-button:active,.viewer-close:active,.viewer-actions button:active{transform:scale(.94);background:#fff3}.viewer-button svg,.viewer-close svg,.viewer-nav svg{width:1.25rem;height:1.25rem}.viewer-button{padding:0 .86rem;font-size:.92rem}.viewer-button.icon-only{padding:0}.viewer-count{display:grid;justify-items:center;gap:.08rem;min-width:0;max-width:42vw;color:#ffffffc7;font-size:.86rem;text-align:center}.viewer-count strong{max-width:100%;overflow:hidden;color:#fffffff0;font-size:.86rem;font-weight:700;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.viewer-count small{font-size:.78rem}.viewer-close{display:none}.viewer-photo-shell{position:relative;align-self:center;width:100%;max-height:72vh;display:grid;place-items:center;overflow:hidden}.viewer-photo-shell .viewer-photo-layer{grid-area:1 / 1;width:100%;height:auto;max-height:72vh;object-fit:contain}.viewer-photo-layer.thumb-layer{animation:viewerPhotoIn .29s cubic-bezier(.2,.86,.26,1) both}.viewer-photo-layer.preview-layer{z-index:1;opacity:0;transition:opacity .26s ease;will-change:opacity}.viewer-photo-layer.preview-layer.preview-visible{opacity:1}.viewer-photo-status{position:absolute;left:50%;bottom:.9rem;z-index:2;transform:translate(-50%);display:inline-flex;align-items:center;justify-content:center;max-width:min(86vw,20rem);min-height:2.4rem;border-radius:999px;padding:0 .9rem;background:#100d0b9e;color:#ffffffeb;font-size:.86rem;line-height:1.2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.viewer-photo-status button{border:0;border-radius:999px;min-height:2.4rem;padding:0 .95rem;background:#fff3;color:#fff;font:inherit}.viewer-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;opacity:.86}.viewer-prev{left:.6rem}.viewer-next{right:.6rem}.viewer-info{transform:translateY(calc(100% - 4.8rem));transition:transform .26s cubic-bezier(.2,.86,.26,1),background .26s ease;padding:1rem 1.2rem calc(1rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,#100d0b2e,#100d0beb 22%)}.viewer-info.open{transform:translateY(0)}.viewer-info h2{margin:0;font-family:HanziPen SC,Kaiti SC,STKaiti,Songti SC,serif;font-size:1.35rem;line-height:1.28}.viewer-info p{margin:.45rem 0 0;color:#ffffffb8;font-size:.95rem;line-height:1.45}.viewer-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:1rem}.viewer-actions button{min-height:2.75rem;font-size:.9rem}.viewer-actions svg{width:1.15rem;height:1.15rem}@media(hover:hover)and (pointer:fine){.photo-frame:hover,.secondary-shot:hover,.memory-story-photo:hover{transform:translateY(-.18rem) rotate(-.45deg);box-shadow:0 1.55rem 2.85rem #3b24122e;filter:saturate(1.03)}.photo-frame:hover img,.secondary-shot:hover img,.memory-story-photo:hover img,.album-card:hover img,.memory-card:hover img{transform:scale(1.035)}.album-card:hover,.memory-card:hover{transform:translateY(-.16rem);background:#ffffffc2}.tab-item:hover{color:#5e4d40;background:#e89e5e14}.viewer-button:hover,.viewer-close:hover,.viewer-actions button:hover{background:#fff3}.time-index-trigger:hover,.time-index-months button:hover{background:#fff6ebfa}.search-tools-trigger:hover,.search-tool-option:hover{background:#f8fdf9fa}.ai-search-submit:hover{background:#33666a;color:#fffdf8}}@media(min-width:720px){.phone-canvas,.phone-canvas:before,.tab-bar{width:430px}.app-shell{padding:1.5rem 0}.phone-canvas{min-height:calc(100vh - 3rem);border-radius:2rem;box-shadow:0 2rem 5rem #3c2a1829}.tab-bar{bottom:1.5rem;border-radius:0 0 2rem 2rem}.time-index-dock{bottom:calc(7.15rem + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
