:root{font-size:17px;color-scheme:light;--li-bg:#fff5f5;--li-paper:#fffdfa;--li-ink:#593c48;--li-muted:#a1818b;--li-pink:#d76b91;--li-deep:#af426b;--li-line:#eecbd580;--li-glass:#fffafaab;--li-shadow:0 18px 60px #9f587b13;font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--li-ink);background:var(--li-bg)}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.li-symbols{position:absolute;width:0;height:0;overflow:hidden}.li-ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 84% 21%,#f3c1d873,transparent 50%),radial-gradient(ellipse at 5% 80%,#ffe4cb70,transparent 45%),linear-gradient(130deg,#fffaf5,#fff1f5 65%,#f6edf7)}
.li-header{height:112px;margin:0 5vw;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--li-line);position:relative;z-index:10}.li-brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.li-brand-heart{display:grid;place-items:center;width:44px;height:50px;color:#dc789a;filter:drop-shadow(0 6px 8px #e893ad55)}.li-brand-heart svg{width:35px;height:35px;fill:#e68ba8;stroke:#f2a9c0}.li-brand b{font-size:24px;letter-spacing:2px}.li-brand i{font-family:Georgia,serif;font-style:normal;letter-spacing:-1px;font-weight:400}.li-brand small{display:block;color:var(--li-muted);font-size:12px;letter-spacing:4px;margin-top:7px}.li-nav{display:flex;align-items:center;gap:5px}.li-nav button{border:0;background:transparent;color:var(--li-muted);padding:12px 16px;display:flex;align-items:center;gap:7px;border-radius:24px;font-size:15px}.li-nav button svg{width:17px;height:17px}.li-nav .active{background:#f5d7e366;color:var(--li-deep)}.li-header-actions{display:flex;align-items:center;gap:16px}.li-private{font-size:11px;letter-spacing:2px;color:var(--li-muted);display:flex;align-items:center;gap:7px}.li-private svg{width:13px;height:13px}.li-button{border:1px solid #ffc8da;background:linear-gradient(130deg,#f29cb7,#d97198);color:white;box-shadow:0 8px 25px #dc739b2b,inset 0 1px 0 #ffffff7a;padding:17px 28px;border-radius:32px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-weight:600;transition:transform .2s,box-shadow .2s}.li-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #dc739b3b}.li-button.small{padding:12px 21px;font-size:15px;gap:8px}.li-button.secondary{background:#ffffff9c;border-color:#edced9;color:var(--li-ink);box-shadow:none}.li-icon-button{width:44px;height:44px;border-radius:50%;border:1px solid var(--li-line);background:#fffaf9a3;color:var(--li-ink);display:inline-grid;place-items:center}.li-text-button{border:0;background:none;color:var(--li-deep);padding:8px;font-size:15px}button:focus-visible,a:focus-visible{outline:3px solid #da7b9f;outline-offset:4px}
.li-gallery{position:relative;min-height:700px;height:calc(100svh - 138px);max-height:1080px;isolation:isolate;overflow:hidden}.li-scene{position:absolute;inset:0;z-index:-1;touch-action:none}.li-scene canvas{display:block;width:100%;height:100%;outline:none}.li-hero{position:relative;margin:0 0 0 9vw;padding-top:clamp(65px,10vh,140px);max-width:440px;pointer-events:none}.li-hero button{pointer-events:auto}.li-eyebrow{font-size:12px;letter-spacing:3px;color:#b67d91;font-weight:600;margin:0 0 24px}.li-handwritten{font-family:Georgia,serif;font-style:italic;color:#c17f97;font-size:21px;margin:0 0 25px}.li-hero h1{font-family:Georgia,"Songti SC","SimSun",serif;font-size:clamp(40px,4.5vw,70px);font-weight:400;line-height:1.32;letter-spacing:1px;margin:0 0 24px;overflow-wrap:anywhere}.li-hero h1 em{font-style:normal;color:#bb587c}.li-hero-description{line-height:2;color:#a7798b;font-size:16px;max-width:350px;white-space:pre-wrap;margin:0 0 30px}.li-hero-note{font-size:13px;color:#b3949f;display:flex;align-items:center;gap:6px;margin-top:25px}.li-hero-note svg{width:13px;height:13px}.li-scene-caption{position:absolute;bottom:146px;right:10%;font-size:12px;letter-spacing:2px;color:#a68492;pointer-events:none}.li-dot{display:inline-block;background:#d786a1;width:5px;height:5px;border-radius:50%;margin-right:8px}.li-gallery-tools{position:absolute;right:5vw;top:25px;display:flex;gap:10px}.li-stats{position:absolute;bottom:28px;left:9vw;right:9vw;border:1px solid #fff;border-radius:24px;min-height:100px;background:linear-gradient(135deg,#ffffffb8,#ffedf4a8);backdrop-filter:blur(18px);box-shadow:var(--li-shadow);display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;align-items:center;padding:22px 36px;gap:20px}.li-stats>div{display:flex;gap:17px;align-items:center}.li-stats svg{width:26px;height:26px;color:#dc83a0}.li-stats b{font-weight:500;font-size:25px}.li-stats small{display:block;font-size:12px;color:var(--li-muted);margin-top:7px}.li-stats p{font:italic 16px/1.6 Georgia,serif;text-align:right;color:#b77b90;margin:0}.li-stats p i{font-size:14px}.li-footer{margin:24px 5vw;display:flex;align-items:center;justify-content:space-between;color:#ad8b98;font-size:12px;gap:16px}.li-footer a{padding:8px}.li-footer .li-text-button{font-size:12px}.li-gallery.is-focused .li-hero{opacity:.1;transition:opacity .5s}.li-content{max-width:1120px;margin:0 auto;padding:60px 28px;min-height:65vh}.li-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}.li-section-heading h2{font-family:Georgia,"Songti SC",serif;font-size:35px;font-weight:400;margin:0;overflow-wrap:anywhere}.li-section-heading .li-eyebrow{margin-bottom:12px}.li-library{max-width:1280px;margin:0 auto;padding:45px 5vw 60px}.li-library-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:0 0 28px}.li-chips{display:flex;gap:10px;overflow:auto;max-width:100%;padding:5px 0}.li-chip{border:1px solid var(--li-line);background:#ffffff80;color:#a97a8e;border-radius:22px;white-space:nowrap;padding:10px 18px;font-size:14px;display:flex;gap:8px;align-items:center}.li-chip.active{background:#f7dce7;color:var(--li-deep);border-color:#eeb8cb}.li-chip img{width:24px;height:24px;border-radius:6px;object-fit:cover}.li-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.li-photo-card{padding:12px 12px 20px;border:1px solid #fff;background:#fffdfacc;box-shadow:var(--li-shadow);border-radius:8px;color:var(--li-muted);text-align:left;min-width:0;transition:transform .25s}.li-photo-card:hover{transform:translateY(-6px) rotate(-1deg)}.li-photo-card img{width:100%;aspect-ratio:1/1.12;object-fit:cover;border-radius:3px;display:block;background:#f5e5ec}.li-photo-card p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:italic 17px Georgia,"Songti SC",serif;margin:15px 3px 6px}.li-photo-card small{font-size:12px;margin-left:3px;color:#baa1aa}.li-photo-page-status{display:flex;justify-content:center;align-items:center;gap:10px;min-height:24px;margin:24px auto 0;color:var(--li-muted);font-size:14px;flex-wrap:wrap}.li-empty{padding:60px 20px;text-align:center;color:var(--li-muted);grid-column:1/-1}.li-empty>svg{width:50px;height:50px;color:#e5a3bd;margin-bottom:20px}.li-empty h3{font-weight:500;color:#96677d}.li-empty p{line-height:1.9;font-size:15px}.li-empty .li-button{margin-top:12px}
.li-memory-list{position:relative;padding-left:38px;display:grid;gap:28px}.li-memory-list:before{content:"";position:absolute;left:8px;top:18px;bottom:18px;width:1px;background:linear-gradient(#edc2d2,#edc2d233)}.li-memory{position:relative;border:1px solid white;background:var(--li-glass);border-radius:22px;padding:27px;box-shadow:var(--li-shadow)}.li-memory:before{content:"";position:absolute;left:-37px;top:35px;width:10px;height:10px;border-radius:50%;background:#dd96b1;border:4px solid #fff4f7;box-sizing:content-box}.li-memory time{color:#b18397;font-size:13px;letter-spacing:2px}.li-memory h3{font-size:22px;font-weight:500;margin:12px 0}.li-memory p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.95;font-size:16px}.li-memory img{width:100%;max-height:340px;object-fit:cover;border-radius:10px;margin-top:15px}.li-card-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:15px}.li-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.li-date-card{border-radius:24px;background:var(--li-glass);border:1px solid white;padding:30px;box-shadow:var(--li-shadow)}.li-date-card>svg{color:#d98baa}.li-date-card h3{font-size:19px;font-weight:500;overflow-wrap:anywhere}.li-date-card b{font:43px Georgia,serif;color:#c76b90}.li-date-card small{color:#ad8697}.li-date-card p{font-size:14px;color:var(--li-muted)}.li-profile{padding:34px;background:var(--li-glass);border:1px solid white;border-radius:28px;box-shadow:var(--li-shadow)}.li-partners{display:flex;align-items:center;gap:24px;margin-bottom:30px}.li-partners>svg{color:#de93af}.li-person{display:flex;align-items:center;gap:12px;font-size:17px}.li-person img,.li-person-placeholder{width:60px;height:60px;object-fit:cover;border-radius:50%;background:#f4d9e4;border:3px solid white;display:grid;place-items:center}.li-person-placeholder svg{color:#bf7898}
.li-dialog{border:1px solid #fff;border-radius:28px;padding:0;width:min(640px,calc(100vw - 28px));max-height:calc(100svh - 40px);color:var(--li-ink);background:#fffbfaf7;box-shadow:0 35px 120px #79415a30;overflow:hidden;overscroll-behavior:contain}.li-dialog[open]{display:flex;flex-direction:column}.li-dialog::backdrop{background:#6c485955;backdrop-filter:blur(10px)}.li-dialog-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-shrink:0;margin:0;padding:32px 32px 24px;border-bottom:1px solid var(--li-line);background:#fffbfa}#li-dialog-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:24px 32px 32px}.li-dialog-head .li-eyebrow{font-size:10px;margin:5px 0 12px}.li-dialog-head h2{font-family:Georgia,"Songti SC",serif;font-size:29px;font-weight:400;margin:0}.li-dialog-head .li-icon-button{flex-shrink:0}.li-form{display:grid;gap:23px}.li-field{display:flex;flex-direction:column;gap:10px;color:#946c7d;font-size:15px;min-width:0}.li-field input,.li-field textarea{width:100%;min-height:48px;border:1px solid #eccdd8;background:#fffefbcc;color:var(--li-ink);border-radius:14px;padding:13px 15px;outline:none;resize:vertical;font-size:16px}.li-field input:focus,.li-field textarea:focus{border-color:#d68baa;box-shadow:0 0 0 3px #f4dce6}.li-field textarea{min-height:115px;line-height:1.8}.li-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.li-field-note{font-size:13px;color:var(--li-muted);line-height:1.8;margin:0}.li-form .li-button{width:100%}.li-check{display:flex;gap:10px;align-items:center;color:var(--li-muted);font-size:15px}.li-check input{accent-color:#d4789d;width:18px;height:18px}.li-detail-photo{width:100%;max-height:53svh;object-fit:contain;border-radius:10px;background:#f7eaf0}.li-detail-caption{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.li-detail-date{color:var(--li-muted);font-size:14px;margin-top:20px}.li-detail-actions{display:flex;gap:12px;justify-content:space-between;margin-top:25px}.li-danger{color:#ba456d}.li-form-error{font-size:14px;color:#ba456d;line-height:1.7;margin:0}.li-select{position:relative;min-width:0}.li-select-trigger{width:100%;border:1px solid #eccdd8;background:#fffdfacc;color:var(--li-ink);border-radius:14px;padding:14px 15px;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:48px}.li-select-trigger span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.li-select-trigger svg{width:14px;height:14px;transform:rotate(-90deg)}.li-select-options{position:relative;max-height:190px;overflow:auto;background:#fffdfb;border:1px solid #efd2de;border-radius:14px;padding:5px;margin-top:7px;box-shadow:0 10px 24px #af62831a}.li-select-options button{display:block;border:0;background:none;width:100%;text-align:left;padding:11px 12px;border-radius:9px;color:var(--li-ink);font-size:15px;font-weight:400;line-height:22px;min-height:44px}.li-select-options button[aria-selected=true],.li-select-options button:hover{background:#f9e2ec;color:#b5577e}.li-date-picker{border:1px solid #eccdd8;border-radius:14px;padding:12px;background:#fffdfb;margin-top:8px}.li-date-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:4px}.li-date-picker-header .li-date-years{border:1px solid var(--li-line);background:white;border-radius:8px;padding:4px 5px;width:80px;min-height:32px;text-align:center;color:var(--li-ink)}.li-date-picker-header .li-date-month{font-size:14px;color:var(--li-muted)}.li-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.li-calendar button,.li-calendar span{display:grid;place-items:center;height:32px;min-width:0;border:0;border-radius:8px;background:transparent;color:var(--li-ink);font-size:14px}.li-calendar span{color:var(--li-muted);font-size:12px}.li-calendar button:hover,.li-calendar button[aria-selected=true]{background:#f2cede;color:#9a3c64}.li-calendar .li-outside{opacity:.35}.li-upload-zone{border:1px dashed #e9abc3;border-radius:18px;background:#fff5f8;padding:28px 18px;text-align:center}.li-upload-zone label{display:block;cursor:pointer;color:#bb698b}.li-upload-zone small{display:block;font-size:13px;margin-top:10px;color:var(--li-muted)}.li-upload-zone input{max-width:100%;margin-top:17px;font-size:14px;color:var(--li-muted)}.li-upload-zone input::file-selector-button{border:1px solid #eccdd8;padding:9px 14px;background:white;border-radius:20px;color:#a45c7c;margin-right:12px}.li-upload-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 0;border-bottom:1px solid var(--li-line);font-size:14px;color:var(--li-muted)}.li-upload-item span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.li-upload-item progress{width:100%;grid-column:1/-1;height:5px;accent-color:#de8caa}.li-toast{position:fixed;inset:auto;bottom:28px;left:50%;margin:0;width:max-content;pointer-events:none;transform:translateX(-50%);z-index:3000;padding:15px 24px;border:1px solid #ffffff5c;border-radius:18px;background:#7f5368f2;color:white;box-shadow:0 10px 30px #743a5a24;font-size:15px;max-width:calc(100vw - 32px);text-align:center;line-height:1.7}.li-noscript{text-align:center;padding:40px}.li-flat .li-gallery{height:auto;min-height:400px}.li-flat .li-scene{display:none}.li-flat .li-hero{padding-top:55px;padding-bottom:140px;max-width:700px}.li-flat .li-hero h1{font-size:41px}.li-flat .li-stats{left:auto;right:7vw;bottom:35px;width:45%;grid-template-columns:repeat(3,1fr)}.li-flat .li-stats p{display:none}.li-flat .li-scene-caption{display:none}.li-flat .li-hero-description{max-width:380px}.li-flat .li-hero .li-eyebrow,.li-flat .li-handwritten{display:none}
@media(min-width:1600px){.li-hero{margin-left:12vw}.li-stats{left:12vw;right:12vw}}
@media(max-width:1100px){.li-header{gap:12px;margin:0 4vw}.li-private{display:none}.li-nav button{padding:12px 10px;font-size:14px}.li-nav button svg{display:none}.li-brand b{font-size:21px}.li-hero{margin-left:6vw;max-width:350px}.li-hero h1{font-size:45px}.li-stats{left:6vw;right:6vw}.li-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.li-gallery{min-height:650px}.li-flat .li-stats{width:43%;padding:20px;gap:10px}.li-flat .li-stats>div{gap:8px}.li-dates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.li-header{height:86px;margin:0 20px;gap:10px}.li-brand b{font-size:20px}.li-brand-heart{width:30px}.li-brand-heart svg{width:29px;height:29px}.li-brand{gap:8px}.li-brand small{font-size:10px;letter-spacing:3px}.li-header .li-button{padding:10px 14px;font-size:13px}.li-header .li-button svg{display:none}.li-header-actions{gap:5px}.li-nav{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:16px;right:16px;justify-content:space-around;background:#fffaf7eb;backdrop-filter:blur(20px);border:1px solid white;border-radius:22px;padding:8px;box-shadow:0 10px 40px #8d4b7226;z-index:15}.li-nav button{display:grid;gap:5px;justify-items:center;padding:8px 10px;font-size:12px;border-radius:15px}.li-nav button svg{display:block;width:20px;height:20px}.li-gallery{min-height:740px;height:calc(100svh - 90px);max-height:1000px}.li-hero{padding-top:35px;margin:0 26px;max-width:90%;pointer-events:none}.li-hero .li-eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:13px}.li-handwritten{font-size:16px;margin-bottom:13px}.li-hero h1{font-size:35px;margin-bottom:12px;line-height:1.35}.li-hero-description{font-size:14px;max-width:85%;margin-bottom:18px;line-height:1.8}.li-hero .li-button{padding:13px 22px;font-size:15px}.li-hero-note{display:none}.li-gallery-tools{right:20px;top:auto;bottom:144px;gap:7px}.li-gallery-tools .li-icon-button{width:36px;height:36px}.li-gallery-tools .li-button{padding:9px 15px;font-size:13px}.li-scene-caption{bottom:198px;right:22px;font-size:10px;letter-spacing:1px}.li-stats{left:20px;right:20px;bottom:24px;min-height:86px;border-radius:20px;padding:20px;grid-template-columns:repeat(3,1fr);gap:12px}.li-stats>div{gap:9px}.li-stats svg{width:18px;height:18px}.li-stats b{font-size:22px}.li-stats small{font-size:11px;margin-top:5px}.li-stats p{display:none}.li-footer{font-size:11px;margin:16px 20px 100px;flex-wrap:wrap;justify-content:center;gap:7px 16px}.li-footer .li-text-button{font-size:11px}.li-library{padding:30px 20px}.li-section-heading{align-items:flex-start;gap:12px}.li-section-heading h2{font-size:26px}.li-section-heading .li-eyebrow{font-size:10px;letter-spacing:2px}.li-section-heading .li-button{padding:10px 14px;white-space:nowrap;font-size:13px}.li-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 14px}.li-photo-card{padding:8px 8px 14px}.li-photo-card p{font-size:15px}.li-content{padding:35px 20px;min-height:68svh}.li-dates{grid-template-columns:1fr}.li-date-card{padding:25px}.li-memory-list{padding-left:26px}.li-memory{padding:21px}.li-memory:before{left:-30px}.li-memory-list:before{left:3px}.li-profile{padding:25px 20px}.li-partners{gap:12px;flex-wrap:wrap}.li-person{font-size:15px;gap:7px}.li-person img,.li-person-placeholder{width:45px;height:45px}.li-dialog{padding:0;border-radius:24px;max-height:calc(100svh - 26px)}.li-dialog-head{padding:24px 20px 20px}#li-dialog-body{padding:22px 20px 24px}.li-dialog-head h2{font-size:25px}.li-dialog-head .li-eyebrow{letter-spacing:2px}.li-fields{gap:16px;grid-template-columns:1fr}.li-form{gap:22px}.li-detail-actions{flex-wrap:wrap}.li-detail-actions .li-button{font-size:14px;padding:12px 17px}.li-toast{bottom:96px;width:max-content}.li-flat .li-gallery{min-height:330px}.li-flat .li-hero{padding:35px 0 130px}.li-flat .li-hero h1{font-size:31px}.li-flat .li-hero-description{display:none}.li-flat .li-stats{left:20px;right:20px;bottom:20px;width:auto}.li-flat .li-gallery-tools{top:30px;bottom:auto}.li-flat .li-gallery-tools .li-button{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}body.li-reduced *,body.li-reduced *:before{scroll-behavior:auto!important;transition-duration:.01ms!important}
.li-upload-zone{position:relative}.li-upload-zone>p{margin:0 0 18px;line-height:1.7;color:var(--li-muted)}.li-upload-zone .li-image-choose{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border:1px solid #edbfd1;border-radius:24px;background:#fffafc;font-size:16px;color:var(--li-deep)}.li-upload-zone .li-image-input{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;opacity:0;overflow:hidden;clip-path:inset(50%)}.li-upload-zone:focus-within .li-image-choose{outline:3px solid #da7b9f;outline-offset:4px}.li-stats>div,.li-stats>div>span{min-width:0}.li-stats small{line-height:1.5}

.li-upload-retry-tools{position:sticky;top:-1px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;background:#fffbfa;border-bottom:1px solid var(--li-line)}.li-upload-retry-tools>span{font-size:14px;color:var(--li-deep)}.li-upload-retry-tools .li-button{width:auto;flex-shrink:0;min-height:42px}
.li-select[data-photos] .li-select-options{max-height:min(280px,45svh)}.li-select-options .li-photo-load-tools button{color:var(--li-deep);background:#f9e2ec;font-weight:600}
.li-photo-new-label{display:block;width:100%;text-align:left;padding:11px 12px;border-radius:9px;background:none;color:var(--li-ink);cursor:pointer;font-size:15px;font-weight:400;line-height:22px;min-height:44px}.li-photo-new-label svg{width:18px;height:18px}.li-photo-new-input{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.li-photo-upload-status{margin:7px 10px 0;font-size:12px;line-height:1.6;color:var(--li-muted)}.li-photo-upload-status.li-photo-load-error{color:#ba456d}.li-photo-uploading .li-photo-new-label{opacity:.6;pointer-events:none;cursor:wait}.li-photo-load-tools:focus-within .li-photo-new-label{outline:2px solid #da7b9f;outline-offset:2px}
.li-photo-viewport{position:relative;width:100%;height:200px;max-height:53svh;overflow:hidden;border-radius:10px;background:#f7eaf0;touch-action:none;cursor:default;isolation:isolate}.li-photo-viewport:focus-visible{outline:2px solid #da7b9f;outline-offset:3px}.li-photo-viewport .li-detail-photo{position:absolute;left:50%;top:50%;width:auto;height:auto;max-width:none;max-height:none;display:block;transform-origin:center;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;will-change:transform;border-radius:0}.li-photo-viewport.li-photo-pannable{cursor:grab}.li-photo-viewport.li-photo-dragging{cursor:grabbing}.li-photo-zoom-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:14px}.li-photo-zoom-controls button{border:1px solid var(--li-line);border-radius:18px;padding:8px 12px;min-width:54px;min-height:38px;background:#fffafc;font-size:13px}.li-photo-zoom-controls button:disabled{cursor:default;opacity:.4}.li-photo-zoom-value{min-width:45px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums;color:var(--li-muted)}.li-photo-zoom-note{font-size:12px;line-height:1.7;text-align:center;color:var(--li-muted);margin:10px 0 0}
@media(max-width:700px){.li-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.li-nav button{width:100%;min-width:0;padding:8px 3px;justify-content:center;justify-items:center;text-align:center}.li-nav button span{min-width:0;white-space:nowrap}}
.li-scene{left:40%;touch-action:pan-y;cursor:grab}.li-scene:active{cursor:grabbing}.li-tooltip{position:fixed;z-index:5000;pointer-events:none;padding:10px 14px;border:1px solid #f7d8e47a;border-radius:12px;background:#805069f5;box-shadow:0 8px 25px #74405b26;color:#fff8fc;font-size:13px;line-height:1.5;overflow-wrap:anywhere;text-align:center}.li-select-options[aria-busy=true]{cursor:progress}@media(max-width:700px){.li-scene{left:0}}

.li-photo-load-tools{position:relative;padding:0;border:0;background:#fffdfb}.li-photo-new-label:hover{background:#f9e2ec;color:#b5577e}
.li-scene{background:radial-gradient(ellipse at 50% 82%,#bd809a17,transparent 52%)}.li-scene.li-scene-card-hovered{cursor:pointer}.li-scene:active{cursor:grabbing}
.li-header{--li-header-gutter:5vw;position:sticky;top:0;z-index:20;isolation:isolate}
.li-account-settings{margin-top:24px}.li-account-settings h3{font-size:20px;margin:0 0 18px}.li-account-name{overflow-wrap:anywhere;line-height:1.8}.li-account-settings .li-button{margin-top:20px}
.li-avatar-control{position:relative;flex:0 0 auto;width:60px;height:60px}
.li-select-options>:not([hidden])~:not([hidden]){margin-top:4px}
.li-select[data-photos] .li-select-options button.li-photo-option,.li-select[data-photos] .li-photo-new-label{display:flex;align-items:center;gap:10px;padding:6px 12px;min-height:52px}
.li-photo-option-preview{position:relative;display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;aspect-ratio:1;overflow:hidden;border-radius:8px;background:#f4dce6;color:var(--li-muted)}
.li-photo-option-preview>svg{width:18px;height:18px}.li-photo-option-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.li-photo-option-label{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
html{scrollbar-gutter:stable}
html.li-modal-open,html.li-modal-open body{overflow:hidden;overscroll-behavior:none}
dialog[open]{overscroll-behavior:contain}
.li-date-with-background{position:relative;isolation:isolate;overflow:hidden}
.li-date-background{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.li-date-with-background::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(135deg,#fffafacc,#fff2f5e6)}
.li-calendar button.li-today{opacity:1}
.li-calendar button.li-today:not([aria-selected=true]){background:#fff0d9;color:#936735;box-shadow:inset 0 0 0 1px #efd6ac}
.li-calendar-footer{display:flex;justify-content:flex-end;margin-top:8px}.li-calendar-footer .li-text-button{font-size:12px;padding:6px 8px}
.li-nav-indicator{display:none}
.li-library-heading-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.li-photo-card{position:relative;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.li-photo-card img{-webkit-user-drag:none}
.li-photo-card-image{position:relative;display:block}
.li-photo-card-image::after{content:"";position:absolute;right:10px;bottom:10px;width:25px;height:25px;border-radius:50%;border:2px solid #dca4ba;background:#fffafae6;opacity:0;transform:scale(.65);transition:opacity .18s,transform .2s,background .2s;pointer-events:none;box-shadow:0 2px 8px #9b5c7520}
.li-selecting .li-photo-card-image::after{opacity:1;transform:scale(1)}
.li-selecting .li-photo-card{padding-right:12px;transition:box-shadow .2s,background .2s}
.li-selecting .li-photo-card:hover{transform:none}
.li-photo-card.li-photo-selected{box-shadow:0 0 0 2px #d9799f,0 15px 35px #c9789820;background:#fff4f8}
.li-photo-card.li-photo-selected .li-photo-card-image::after{border-color:#d16f96;background:#d16f96 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/20px no-repeat}
.li-selection-panel{position:fixed;z-index:35;left:50%;bottom:max(20px,env(safe-area-inset-bottom));width:min(660px,calc(100% - 32px));transform:translateX(-50%);padding:12px 24px 22px;background:linear-gradient(135deg,#fffdfb99,#fff4f780);border:1px solid #ffffffb8;border-radius:28px;box-shadow:0 8px 32px #87546826,inset 0 1px 0 #ffffffd9,inset 0 -1px 0 #ffffff4d;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);animation:li-selection-rise .28s cubic-bezier(.22,1,.36,1)}
.li-selection-handle{height:4px;width:36px;margin:0 auto 8px;border-radius:4px;background:#d9a9bc80}
.li-selection-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:16px}
.li-selection-heading>div{display:flex;align-items:center;gap:4px}
.li-selection-heading .li-icon-button{width:34px;height:34px;margin-left:5px}
.li-selection-heading .li-text-button{font-size:13px;padding:7px}
.li-selection-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.li-selection-actions>button{border:1px solid #efcad980;background:#ffffff8c;color:var(--li-deep);border-radius:17px;padding:14px 5px;display:grid;justify-items:center;gap:8px;font-size:15px;transition:background .2s,transform .2s}
.li-selection-actions>button:hover{background:#f9dfe9;transform:translateY(-2px)}
.li-selecting-photos .li-library{padding-bottom:230px}
.li-selection-sort{display:grid;gap:10px;max-height:38svh;overflow:auto;list-style:none;padding:3px;margin:0}
.li-selection-sort li{display:flex;align-items:center;gap:10px;min-width:0;padding:8px;background:#f9edf2;border-radius:14px}
.li-selection-sort img{width:44px;height:44px;object-fit:cover;border-radius:8px;flex-shrink:0}
.li-selection-sort span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
.li-selection-sort .li-icon-button{width:34px;height:34px;flex-shrink:0}
.li-selection-summary{margin:0;color:var(--li-muted);font-size:15px}
@keyframes li-selection-rise{from{opacity:0;transform:translate(-50%,30px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:700px){.li-selection-panel{padding:10px 15px 16px;border-radius:24px}.li-selection-heading{font-size:14px}.li-selection-heading .li-text-button{font-size:12px;padding:6px}.li-selection-actions{gap:8px;margin-top:12px}.li-selection-actions>button{font-size:14px;padding:12px 4px}.li-selecting-photos .li-nav{visibility:hidden;pointer-events:none}.li-library-heading-actions{gap:7px}.li-photo-card-image::after{width:23px;height:23px}.li-selecting .li-photo-card{padding-right:8px}}
@media(max-width:700px){
  .li-nav{background:linear-gradient(135deg,#fffdfb99,#fff4f780);border:1px solid #ffffffb8;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);box-shadow:0 8px 32px #87546826,inset 0 1px 0 #ffffffd9,inset 0 -1px 0 #ffffff4d;touch-action:none;user-select:none;-webkit-user-select:none;isolation:isolate}
  .li-nav-indicator{display:block;position:absolute;left:0;z-index:0;border:1px solid #ffffff85;border-radius:17px;background:linear-gradient(135deg,#f9d9e5c9,#f5c4d797);box-shadow:inset 0 1px 0 #ffffffb3,0 3px 12px #bb6f8e1c;pointer-events:none;will-change:transform;transition:transform .32s cubic-bezier(.22,1,.36,1)}
  .li-nav button{position:relative;z-index:1;transition:color .18s,transform .18s;background:transparent}
  .li-nav button.active{background:transparent}
  .li-nav-pressing button.li-nav-preview{color:var(--li-deep);transform:translateY(-1px)}
  .li-nav-dragging button.active:not(.li-nav-preview){color:var(--li-muted)}
  .li-nav-dragging .li-nav-indicator{transition:none;box-shadow:inset 0 1px 0 #ffffffcc,0 5px 18px #bb6f8e33}
  .li-reduced .li-nav-indicator,.li-reduced .li-nav button{transition:none}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){ .li-selection-panel{background:#fff8f7ed}@media(max-width:700px){.li-nav{background:#fff8f7ed}}}
@media(prefers-reduced-motion:reduce){.li-nav-indicator,.li-nav button{transition:none}}
.li-avatar-picker{position:relative;display:block;width:100%;height:100%;overflow:hidden;border:3px solid white;border-radius:50%;background:#f4d9e4;cursor:pointer}
.li-person .li-avatar-picker img,.li-avatar-picker .li-person-placeholder{width:100%;height:100%;border:0}
.li-avatar-shade{position:absolute;inset:0;display:grid;place-items:center;background:#0008;color:white;opacity:0;transition:opacity .18s}
.li-avatar-control:focus-within .li-avatar-picker{outline:3px solid #da7b9f;outline-offset:3px}
.li-avatar-picker:active .li-avatar-shade,.li-avatar-control.li-photo-uploading .li-avatar-shade{opacity:1}
.li-avatar-control.li-photo-uploading .li-avatar-picker{pointer-events:none;cursor:wait}
.li-avatar-control .li-photo-upload-status{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.li-avatar-retry{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);padding:2px 8px;border:1px solid var(--li-line);border-radius:12px;background:var(--li-paper);color:var(--li-deep);font-size:12px;white-space:nowrap}
.li-profile .li-form>.li-partners{margin-bottom:6px}.li-person>span{overflow-wrap:anywhere;min-width:0}
.li-toast::backdrop{background:transparent;pointer-events:none}
@media(hover:hover) and (pointer:fine){.li-avatar-picker:hover .li-avatar-shade{opacity:1}}
@media(max-width:700px){.li-avatar-control{width:45px;height:45px}}
.li-header::before{content:"";position:absolute;inset:0 calc(-1 * var(--li-header-gutter));z-index:-1;pointer-events:none;background:#fff7f8ed;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html{scroll-padding-top:128px}
@media(max-width:1100px){.li-header{--li-header-gutter:4vw}}
@media(max-width:700px){.li-header{--li-header-gutter:20px}html{scroll-padding-top:102px}}
@media(max-width:700px){
  html{scroll-padding-bottom:calc(110px + env(safe-area-inset-bottom))}
  body:not(.li-flat) .li-gallery{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "stage" "caption" "stats";gap:12px;height:auto;min-height:0;max-height:none;padding:0 20px 24px;overflow:visible}
  body:not(.li-flat) .li-hero{grid-area:hero;margin:0;max-width:none;padding:24px 2px 0}
  body:not(.li-flat) .li-hero h1{margin-bottom:12px}
  body:not(.li-flat) .li-hero-description{max-width:none;margin-bottom:18px}
  body:not(.li-flat) .li-hero .li-button{padding:11px 20px;font-size:14px;min-height:44px}
  body:not(.li-flat) .li-scene{grid-area:stage;position:relative;inset:auto;z-index:0;width:100%;height:clamp(230px,39svh,370px);min-height:0;overflow:hidden;border-radius:24px;scroll-margin-bottom:calc(110px + env(safe-area-inset-bottom))}
  body:not(.li-flat) .li-scene-caption{grid-area:caption;position:static;text-align:center;font-size:10px;line-height:1.7;letter-spacing:.5px;padding:0 4px;pointer-events:none}
  body:not(.li-flat) .li-gallery-tools{position:absolute;top:24px;right:22px;bottom:auto;align-items:center;padding:0}
  body:not(.li-flat) .li-gallery-tools .li-icon-button{width:40px;height:40px}
  body:not(.li-flat) .li-gallery-tools .li-button{min-height:40px}
  body:not(.li-flat) .li-stats{grid-area:stats;position:static;width:auto;min-height:84px;margin:2px 0 0;padding:16px 14px;gap:10px;border-radius:20px;grid-template-columns:repeat(3,minmax(0,1fr))}
  body:not(.li-flat) .li-stats>div{display:block;min-width:0}
  body:not(.li-flat) .li-stats svg{display:none}
  body:not(.li-flat) .li-stats b{font-size:23px}
  body:not(.li-flat) .li-stats small{font-size:clamp(10px,2.8vw,12px);line-height:1.5;white-space:nowrap;margin-top:6px}
}
/* The flat wall shares a compact action row with its statistics. */
@media(min-width:701px){
  .li-flat .li-gallery{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.5fr);grid-template-rows:auto auto auto auto;align-items:center;gap:14px 36px;min-height:0;max-height:none;padding:55px 9vw 24px}
  .li-flat .li-hero{display:contents}
  .li-flat .li-hero h1{grid-column:1/-1;grid-row:1;margin:0;padding-right:230px}
  .li-flat .li-hero-description{grid-column:1/-1;grid-row:2;max-width:none;margin:0 0 8px}
  .li-flat #li-hero-cta{grid-column:1;grid-row:3;justify-self:start;align-self:center}
  .li-flat .li-hero-note{grid-column:1/-1;grid-row:4;margin:0}
  .li-flat .li-stats{grid-column:2;grid-row:3;position:static;width:auto;min-height:96px;margin:0;padding:18px 24px;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
  .li-flat .li-stats>div{gap:12px}
  .li-flat .li-library{padding-top:24px}
}
@media(min-width:701px) and (max-width:1100px){
  .li-flat .li-stats{padding:16px;gap:12px}
  .li-flat .li-stats>div{display:block}
  .li-flat .li-stats>div>span{display:contents}
  .li-flat .li-stats svg{width:20px;height:20px;margin-right:6px;vertical-align:middle}
  .li-flat .li-stats b{font-size:23px;vertical-align:middle}
  .li-flat .li-stats small{font-size:12px}
}
/* Keep the same title-side switch in both mobile gallery modes. */
@media(max-width:700px){
  body.li-authenticated .li-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;height:auto;min-height:0;max-height:none;padding:0 20px 24px;overflow:visible}
  body.li-authenticated.li-flat .li-gallery{grid-template-areas:"hero" "stats"}
  body.li-authenticated .li-hero{grid-area:hero;margin:0;max-width:none;padding:24px 2px 0}
  body.li-authenticated .li-hero .li-eyebrow,body.li-authenticated .li-handwritten{display:none}
  body.li-authenticated .li-hero h1{font-size:32px;line-height:1.35;margin:0 0 12px;padding-right:56px;min-height:40px}
  body.li-authenticated .li-hero .li-button{padding:11px 20px;font-size:14px;min-height:44px}
  body.li-authenticated .li-gallery-tools{position:absolute;top:24px;right:22px;bottom:auto;padding:0;z-index:2}
  body.li-authenticated .li-gallery-tools .li-icon-button{width:40px;height:40px}
  body.li-authenticated .li-gallery-tools .li-button{display:none}
  body.li-authenticated.li-flat .li-stats{grid-area:stats;position:static;width:auto;min-height:84px;margin:10px 0 0;padding:16px 14px;gap:10px;border-radius:20px;grid-template-columns:repeat(3,minmax(0,1fr))}
}
