.memorial-space-section{margin:24px 0;border:1px solid #e2e6d8;border-radius:26px;background:#fffdf7;overflow:hidden}.memorial-space-section>header{padding:20px 24px 14px}.memorial-space-section h2{margin:0;font-size:28px;color:#194b3d}.memorial-space-section header p{margin:6px 0 0;color:#6b7d70;font-size:13px}.memorial-space-section iframe{display:block;width:100%;height:820px;border:0;background:#fffdf7}.memorial-materials{margin-top:22px;border-top:1px solid #e2e6d8;padding-top:14px}.memorial-materials>summary{cursor:pointer;font-weight:600;color:#194b3d}.memorial-legacy-tools.parallel-world-card{display:block;padding:12px 0;margin:0;border:0;background:transparent;box-shadow:none}.memorial-legacy-tools video{max-width:100%;width:100%;border-radius:16px}.memorial-legacy-tools .parallel-photo-archive{grid-column:auto}.memorial-legacy-tools .parallel-video-tools,.memorial-legacy-tools .parallel-photo-tools{margin-top:12px}.memorial-album-subtitle{margin-top:24px}.side-card .memorial-home-disclosure{margin:10px 0 20px}@media(max-width:600px){.memorial-space-section{border-radius:20px;margin:16px 0}.memorial-space-section>header{padding:16px 14px 12px}.memorial-space-section h2{font-size:24px}.memorial-space-section iframe{height:570px}.memorial-space-section header p{font-size:12px}}

.memorial-with-space .memorial-space-section{margin:16px 0 0}.memorial-detail-page.memorial-with-space .memorial-title{margin:16px 0 0;min-height:110px;padding:20px 24px;box-shadow:none;border:1px solid #e2e6d8}.memorial-with-space .memorial-avatar{width:82px;height:82px;margin-top:0;border-width:4px}@media(max-width:720px){.memorial-detail-page.memorial-with-space .memorial-title{margin:12px 0 0;padding:16px;gap:12px;min-height:100px}.memorial-with-space .memorial-avatar{width:66px;height:66px;margin-top:0}.memorial-with-space .memorial-title h1{font-size:28px}}

.memorial-space-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 18px;border-top:1px solid #e2e6d8;background:#fffdf7}.memorial-space-metrics>span,.memorial-space-metrics>button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;border-radius:12px;background:#f0f5e5;color:#536d3c;font-size:15px;white-space:nowrap}.memorial-space-metrics b{font-size:17px}@media(max-width:600px){.memorial-space-metrics{gap:6px;padding:10px}.memorial-space-metrics>span,.memorial-space-metrics>button{font-size:11px;gap:3px;min-height:38px;border-radius:9px}.memorial-space-metrics b{font-size:13px}}

.memorial-switcher{position:relative;display:flex;justify-content:flex-end;margin:8px 0 12px}.memorial-switcher summary{list-style:none;cursor:pointer}.memorial-switcher summary::-webkit-details-marker{display:none}.memorial-switcher-menu{position:absolute;right:0;top:46px;z-index:20;min-width:180px;max-width:100%;max-height:280px;overflow:auto;padding:6px;background:#fffdf7;border:1px solid #d9e3c9;border-radius:14px;box-shadow:0 8px 24px #143e2e15}.memorial-switcher-menu a{display:block;padding:10px 14px;border-radius:9px;color:#164534;text-decoration:none;overflow-wrap:anywhere}.memorial-switcher-menu a:hover,.memorial-switcher-menu a[aria-current]{background:#edf5d9;font-weight:700}

.memorial-space-metrics>button{font-family:inherit;border:1px solid transparent;cursor:pointer}.memorial-space-metrics>button:hover{background:#e2efbc;border-color:#acc969}.memorial-space-metrics>button:focus-visible{outline:2px solid #315c3d;outline-offset:2px}.gift-dialog{width:min(420px,calc(100% - 32px));box-sizing:border-box;padding:24px;border:1px solid #dce5cc;border-radius:22px;background:#fffdf7;color:#164534}.gift-dialog::backdrop{background:#15382b66}.gift-dialog header{display:flex;justify-content:space-between;align-items:center;gap:12px}.gift-dialog h2{margin:0;font-size:24px}.gift-price{font-size:30px;font-weight:700;margin:16px 0}.gift-dialog details{margin:16px 0}.gift-dialog summary{cursor:pointer;font-weight:600}.gift-dialog textarea{margin-top:8px}.gift-dialog .form-error:empty{display:none}

.memorial-pagination{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid #e2e6d8}.memorial-pagination>span{font-size:13px;color:#5c7362}.memorial-pagination .pagination-error:empty{display:none}.memorial-album-entry{margin:0 0 16px}#memorial-comments-list,#memorial-offerings-list{scroll-margin-top:110px}@media(max-width:600px){.memorial-pagination{gap:8px}.memorial-pagination .btn{padding:8px 10px}.memorial-pagination>span{font-size:12px}}

.memorial-visitor{grid-template-columns:minmax(0,1fr)!important}.memorial-visitor>.side-card{display:none}.comment-card p,.offering-item p{overflow-wrap:anywhere}.gift-dialog{max-height:calc(100dvh - 40px);overflow:auto}.memorial-space-metrics>button{min-height:44px}@media(max-width:600px){.gift-dialog{padding:20px}.memorial-section-tabs{overflow-x:auto;flex-wrap:nowrap}.memorial-section-tabs a{white-space:nowrap;flex-shrink:0}}

.memorial-message-section{margin-top:20px;scroll-margin-top:100px}.memorial-message-section>h2{font-size:23px;margin:0 0 6px}.memorial-message-section #comment-form{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px;align-items:end}.memorial-message-section #comment-form .field{margin:0}.memorial-message-section #comment-body{min-height:88px;height:88px}.memorial-feed-heading{display:flex;justify-content:space-between;align-items:center;margin:22px 0 10px;border-top:1px solid #e2e6d8;padding-top:16px}.memorial-feed-heading h3{margin:0}.memorial-feed-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid #e9ecdf}.memorial-feed-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;background:#f0f5e5;border-radius:12px}.memorial-feed-item>div{min-width:0;flex:1}.memorial-feed-item header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.memorial-feed-item time{font-size:12px;color:#728174;white-space:nowrap}.memorial-feed-item p{margin:7px 0 0;overflow-wrap:anywhere;font-size:15px;line-height:1.7}#memorial-feed-list{scroll-margin-top:100px}@media(max-width:650px){.memorial-message-section #comment-form{grid-template-columns:1fr}.memorial-message-section #comment-form>.btn{justify-self:end}.memorial-feed-item header{flex-wrap:wrap;gap:4px}.memorial-feed-heading{flex-wrap:wrap;gap:6px}}

/* Memorial: quiet garden, writing nook and shared memories. */
.memorial-detail-page{background:linear-gradient(180deg,#fffdf7 0%,#faf8f1 100%)}
.memorial-detail-page>.shell{max-width:1180px}
.memorial-detail-page .card{border-color:#e7e8dd;border-radius:24px;box-shadow:0 8px 28px #29453105}
.memorial-detail-page .breadcrumb{font-size:13px;color:#788477}
.memorial-with-space .memorial-space-section{box-shadow:0 12px 36px #244d3510;border-color:#dfe5d6}
.memorial-space-section>header{background:linear-gradient(100deg,#f2f6e8,#fffaf2)}
.memorial-detail-page.memorial-with-space .memorial-title{padding:18px 24px;background:linear-gradient(110deg,#fffdf8,#f6f5e9);border-radius:0 0 24px 24px;margin-top:0;border-top:0}
.memorial-with-space .memorial-space-section{border-bottom-left-radius:0;border-bottom-right-radius:0}
.memorial-detail-page .memorial-title h1{font-size:34px;line-height:1.25;margin:6px 0}
.memorial-detail-page .memorial-title .badge{background:transparent;padding:0;font-size:12px;color:#71816b}
.memorial-detail-page .memorial-title .muted{font-size:13px}
.memorial-space-metrics{background:#fffdf8;gap:12px;padding:12px 20px}
.memorial-space-metrics>span{background:#f2f3eb}
.memorial-space-metrics>button:nth-child(2){background:#fbeddf;color:#785643}
.memorial-space-metrics>button:nth-child(3){background:#faf0d9;color:#78623c}
.memorial-space-metrics>button:nth-child(4){background:#edf2e2;color:#536c43}
.memorial-space-metrics>button:hover{filter:brightness(.96);border-color:#aabd86}
.memorial-detail-page .memorial-section-tabs{justify-content:flex-start;gap:8px;border:0;margin:14px 0 20px;padding:0}
.memorial-detail-page .memorial-section-tabs a{display:block;padding:10px 20px;border:1px solid #e2e7d7;border-radius:30px;background:#fffdf8;color:#45614e;text-decoration:none;font-size:14px}
.memorial-detail-page .memorial-section-tabs a:hover{background:#edf3db;border-color:#b7cd88}
.memorial-detail-page .memorial-message-section{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.65fr);padding:0;overflow:hidden;margin:0 0 24px}
.memorial-composer{padding:28px;background:linear-gradient(155deg,#f6f3e6,#fcf7ef);border-right:1px solid #e7e8dd}
.memorial-composer .eyebrow{font-size:11px;letter-spacing:2px;color:#967458}
.memorial-detail-page .memorial-composer h2{font-size:25px;margin:10px 0 8px;line-height:1.4}
.memorial-composer>.tiny{font-size:12px;line-height:1.7;color:#73816e;margin-bottom:22px}
.memorial-message-section #comment-form{grid-template-columns:1fr;gap:16px}
.memorial-message-section #comment-form label{font-size:13px;font-weight:600;color:#52674f}
.memorial-message-section #comment-form .input,.memorial-message-section #comment-form .textarea{background:#fffefb;border-color:#dde2d3;border-radius:14px;font-size:15px}
.memorial-message-section #comment-body{height:150px;min-height:110px;resize:vertical}
.memorial-message-section #comment-form>.btn{width:100%;margin-top:2px;min-height:44px}
.memorial-community{padding:26px 28px;min-width:0}
.memorial-feed-heading{border:0;padding:0;margin:0 0 12px;gap:12px}
.memorial-detail-page .memorial-feed-heading h3{font-size:20px}
.memorial-feed-item{padding:13px 0;gap:12px}
.memorial-feed-icon{width:34px;height:34px;border-radius:50%;font-size:16px}
.memorial-feed-item--comment .memorial-feed-icon,.memorial-feed-item--flower .memorial-feed-icon{background:#f8e8df;color:#a36951}
.memorial-feed-item--candle .memorial-feed-icon{background:#faf0d9}
.memorial-feed-item--visit .memorial-feed-icon{background:#f1f2ec;color:#71816c}
.memorial-feed-item header strong{font-size:14px;font-weight:600}
.memorial-feed-item time{font-size:11px}
.memorial-feed-item p{font-size:14px;line-height:1.75;margin-top:5px;color:#52634f}
.memorial-feed-item .tiny{font-size:11px;color:#7c8578}
.memorial-detail-page #memorial-story{background:linear-gradient(115deg,#f2f6e8,#fffdf8);padding:26px 28px}
.memorial-detail-page #memorial-story h2{font-size:25px;margin:8px 0 12px}
.memorial-detail-page #memorial-story .lead{font-size:16px;line-height:1.95;white-space:pre-line;overflow-wrap:anywhere}
.memorial-detail-page #memorial-album{padding:26px 28px}
.memorial-detail-page .media-grid{gap:14px}
.memorial-detail-page .media-card{border-radius:16px;overflow:hidden;background:#faf9f1}
.memorial-detail-page .side-card>.card{background:#f7f8f0;padding:24px}
.memorial-detail-page .side-card h3{font-size:18px}
.memorial-detail-page .upload-box{background:#fffef9;border-color:#e0e5d7;border-radius:14px}
.memorial-detail-page .btn:focus-visible,.memorial-detail-page a:focus-visible{outline:2px solid #648047;outline-offset:3px}
@media(max-width:760px){
 .memorial-detail-page .memorial-message-section{grid-template-columns:1fr}
 .memorial-composer{padding:22px;border-right:0;border-bottom:1px solid #e7e8dd}
 .memorial-composer>.tiny{margin-bottom:16px}
 .memorial-message-section #comment-body{height:100px}
 .memorial-community{padding:22px}
 .memorial-feed-item header{flex-wrap:wrap;gap:3px}
 .memorial-detail-page .split{grid-template-columns:minmax(0,1fr)}
 .memorial-detail-page .memorial-section-tabs{gap:7px;justify-content:flex-start}
 .memorial-detail-page .memorial-section-tabs a{padding:9px 15px;font-size:13px}
 .memorial-detail-page.memorial-with-space .memorial-title{padding:16px;gap:12px}
 .memorial-detail-page .memorial-title h1{font-size:28px}
 .memorial-detail-page #memorial-story,.memorial-detail-page #memorial-album{padding:22px}
 .memorial-space-metrics{padding:10px;gap:6px}
 .memorial-detail-page .card{border-radius:20px}
}
