.life-book{max-width:1080px;margin:0 auto 80px;color:#243f35;font-family:Georgia,'Times New Roman',serif}
.life-book-cover{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:end;gap:30px;min-height:370px;padding:48px 55px 0;background:#e7e9dc;border-radius:18px 18px 0 0;overflow:hidden;position:relative}
.life-book-cover:before{content:'';position:absolute;width:330px;height:330px;border-radius:50%;background:#f4dabb;right:110px;top:-125px;opacity:.8}
.life-book-cover>div{position:relative}.life-book-kicker,.life-book-number,.annual-review-age{font:700 11px/1.4 system-ui,sans-serif;letter-spacing:.15em;color:#5a7864}
.life-book-cover h2{font:normal clamp(41px,5vw,68px)/1.04 Georgia,serif;letter-spacing:-.045em;margin:18px 0 22px;max-width:670px}
.life-book-cover p{font:18px/1.6 Georgia,serif;max-width:570px;color:#53695a}.life-book-cover strong{display:inline-block;margin:18px 0 55px;font:700 13px system-ui,sans-serif;letter-spacing:.08em;color:#486852}
.life-book-portrait{height:345px;display:flex;align-items:flex-end;justify-content:center;color:#8b9e85;font-size:100px}.life-book-portrait svg{height:100%;width:100%;object-fit:contain}
.life-book-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;padding:20px 25px;background:#314e40;color:#fff;border-radius:0 0 14px 14px}
.life-book-actions button{border:1px solid #a1b69f;border-radius:8px;padding:11px 13px;background:transparent;color:#f8f5ec;font:700 12px system-ui,sans-serif;cursor:pointer;min-height:44px}.life-book-actions button:first-child{background:#f5eee0;color:#29483d}.life-book-actions button:hover{background:#47715a;color:#fff}.life-book-actions button:focus-visible,.annual-review-v235 button:focus-visible{outline:3px solid #c89b70;outline-offset:3px}
.life-book-status{flex-basis:100%;font:12px system-ui,sans-serif;color:#e4e9dc}.life-book-private{font:12px/1.6 system-ui,sans-serif;color:#657668;margin:14px 20px 45px}
.life-book-section{padding:42px clamp(22px,5vw,60px) 55px;border-bottom:1px solid #d6dfd3;background:#fffdf8}.life-book-section h3{font:normal clamp(29px,3vw,42px)/1.13 Georgia,serif;letter-spacing:-.025em;margin:12px 0}.life-book-section>p,.life-book-archive-head p{color:#647568;font:16px/1.65 Georgia,serif;max-width:650px}
.life-book-highlights{margin-top:30px;border-top:1px solid #ccd9ca}.life-book-highlights article{display:grid;grid-template-columns:140px minmax(0,1fr);column-gap:26px;padding:24px 0;border-bottom:1px solid #dce4d9}.life-book-highlights time{grid-row:span 2;color:#708b70;font:700 12px/1.5 system-ui,sans-serif}.life-book-highlights h4{font:normal 25px/1.2 Georgia,serif;margin:0 0 7px}.life-book-highlights p{font:15px/1.65 Georgia,serif;color:#526657;margin:0}
.life-book-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:25px}.life-book-people article{display:flex;gap:14px;align-items:center;border:1px solid #d9e1d5;background:#f8f6ee;border-radius:10px;padding:15px}.life-book-people article>span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#dce8d8;color:#54735d;flex:none}.life-book-people strong{display:block;font:normal 19px Georgia,serif}.life-book-people small{display:block;margin-top:4px;color:#68806b;font:12px system-ui,sans-serif}
.life-book-people article p{margin:7px 0 0;color:#526958;font:13px/1.5 Georgia,serif}
.life-book-archive-head{display:flex;align-items:end;justify-content:space-between;gap:15px}.life-book-archive-head button{border:1px solid #a6b8a5;background:#f6f8f1;color:#2f5940;border-radius:8px;padding:10px 13px;cursor:pointer;min-height:44px}.life-book-decade{border-top:1px solid #becbbd}.life-book-decade:last-child{border-bottom:1px solid #becbbd}.life-book-decade>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;padding:22px 0;list-style:none;font:normal 28px Georgia,serif}.life-book-decade>summary::-webkit-details-marker{display:none}.life-book-decade>summary:after{content:'+';font:24px Georgia,serif;color:#6d8a73}.life-book-decade[open]>summary:after{content:'−'}.life-book-decade>summary small{margin-left:auto;align-self:center;font:12px system-ui,sans-serif;color:#708272}
.life-book-year{display:grid;grid-template-columns:75px minmax(0,1fr);gap:30px;border-top:1px solid #e1e7dc;padding:27px 0}.life-book-year h4{font:700 14px system-ui,sans-serif;color:#68846d;margin:7px 0}.life-book-month{padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid #e8ede4}.life-book-month:last-child{border-bottom:0;margin-bottom:0}.life-book-month time{font:700 11px system-ui,sans-serif;color:#769079;letter-spacing:.08em;text-transform:uppercase}.life-book-month h5{font:normal 23px Georgia,serif;margin:9px 0 7px}.life-book-month p{font:15px/1.75 Georgia,serif;color:#4c6554;margin:0;max-width:700px}
.life-book-month.is-quiet{padding-bottom:12px;margin-bottom:12px}.life-book-month.is-quiet>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;list-style:none}.life-book-month.is-quiet>summary::-webkit-details-marker{display:none}.life-book-month.is-quiet>summary span{font:600 12px system-ui,sans-serif;color:#557962}.life-book-month.is-quiet[open]>summary{margin-bottom:10px}.life-book-month.is-quiet>h5,.life-book-month.is-quiet>p{margin-left:12px}
.life-book-footer{display:flex;justify-content:space-between;gap:20px;padding:24px 35px;background:#e8e9dc;color:#43614d;font:12px system-ui,sans-serif;border-radius:0 0 14px 14px}
.annual-review-v235{border:0;border-radius:17px;padding:0;background:#f9f6ee;color:#2b473b;width:min(1050px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-shadow:0 28px 80px #1b292a66;overflow:hidden}.annual-review-v235::backdrop{background:#182c27bb;backdrop-filter:blur(3px)}
body.annual-review-open::before{content:'';position:fixed;inset:0;z-index:68;background:#182c274d;pointer-events:none}
.annual-review-v235[open]{position:fixed;z-index:69;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}
.annual-review-shell{display:flex;flex-direction:column;max-height:calc(100dvh - 24px)}.annual-review-shell>header,.annual-review-shell>footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 24px;background:#314c40;color:#f8f5ec;flex:none}.annual-review-shell>header span{font:700 11px system-ui,sans-serif;letter-spacing:.12em}.annual-review-shell>header button{color:#fff;background:transparent;border:1px solid #aec1af;border-radius:8px;padding:8px 12px;cursor:pointer}.annual-review-shell>footer{background:#eeeade;color:#395547;flex-wrap:wrap}.annual-review-shell>footer p{font:12px system-ui,sans-serif;max-width:250px}.annual-review-shell>footer div{display:flex;gap:8px;flex-wrap:wrap}.annual-review-shell>footer button,.annual-review-name{border:1px solid #9db19f;border-radius:8px;background:#fffdf7;color:#345641;padding:10px 12px;min-height:44px;font:700 12px system-ui,sans-serif;cursor:pointer}.annual-review-shell>footer button.primary{background:#315842;color:#fff}
.annual-review-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,365px);gap:30px;overflow-y:auto;min-height:0;padding:28px 30px}.annual-review-content h2{font:normal clamp(32px,4vw,50px)/1.07 Georgia,serif;letter-spacing:-.035em;margin:12px 0 15px}.annual-review-content>div>p{font:16px/1.6 Georgia,serif;color:#617366}.annual-review-moments{border-top:1px solid #d5dfd3;margin:25px 0}.annual-review-moments article{padding:15px 0;border-bottom:1px solid #e0e6dc}.annual-review-moments small{display:block;color:#779079;font:700 11px system-ui,sans-serif;text-transform:uppercase}.annual-review-moments strong{display:block;font:normal 23px Georgia,serif;margin:6px 0}.annual-review-moments p{font:14px/1.6 Georgia,serif;margin:0;color:#516757}.annual-review-name[aria-pressed="true"]{background:#315842;color:#fff}.annual-review-card{background:#e5e6d9;padding:12px;align-self:start;box-shadow:0 10px 28px #263f2f26}.annual-review-canvas{display:block;width:100%;height:auto;background:#f5f0e7}
@media(max-width:720px){.life-book-cover{grid-template-columns:1fr 120px;min-height:290px;padding:30px 22px 0;gap:0}.life-book-cover h2{font-size:41px}.life-book-cover p{font-size:15px}.life-book-cover strong{margin-bottom:30px}.life-book-portrait{height:190px}.life-book-highlights article{grid-template-columns:1fr;gap:7px}.life-book-highlights time{grid-row:auto}.life-book-people{grid-template-columns:1fr}.life-book-year{grid-template-columns:1fr;gap:4px}.life-book-archive-head{align-items:start;flex-direction:column}.annual-review-content{grid-template-columns:1fr;padding:19px}.annual-review-card{max-width:230px;order:-1;justify-self:center}.annual-review-shell>footer{padding:12px}.annual-review-shell>footer p{margin:0}.annual-review-shell>footer button{min-height:42px}}
