@import"https://fonts.googleapis.com/css2?family=Assistant:wght@400;500;600;700&family=Frank+Ruhl+Libre:wght@500;600;700&display=swap";:root{--bg: #e7e4db;--paper: #f4f2eb;--ink: #242927;--ink-soft: #4d554f;--cypress: #37463b;--cypress-2: #54655a;--gold: #a9722e;--gold-glow: #e9b45e;--sage: #8f9c88;--line: rgba(55, 70, 59, .16);--display: "Frank Ruhl Libre", "David Libre", "Georgia", serif;--body: "Assistant", "Heebo", "Segoe UI", "Arial", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{direction:rtl;font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased}a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}.app-container{max-width:1040px;margin:0 auto;padding:0 20px}.site-header{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;background:#f4f2ebe6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.site-header .brand{display:flex;align-items:center;gap:9px;font-family:var(--display);font-weight:700;font-size:22px;color:var(--cypress)}.site-header .brand:hover{text-decoration:none}.site-header nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn{font-family:var(--body);font-size:15px;font-weight:600;cursor:pointer;border:none;border-radius:999px;padding:11px 22px;transition:transform .12s,box-shadow .12s,background .2s;display:inline-flex;align-items:center;gap:7px;text-decoration:none}.btn:hover{text-decoration:none}.btn-primary{background:linear-gradient(180deg,var(--gold),#8f5f24);color:#fff;box-shadow:0 6px 18px #a9722e4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px #a9722e66}.btn-cypress{background:var(--cypress);color:#fff}.btn-cypress:hover{background:#2c352e}.btn-ghost{background:transparent;color:var(--cypress);border:1px solid var(--line)}.btn-ghost:hover{background:var(--paper)}.btn-block{width:100%;justify-content:center}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px}.field{margin-bottom:16px}.field label{display:block;font-size:14px;color:var(--cypress-2);margin-bottom:6px;font-weight:600}.field input,.field select,.field textarea{width:100%;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:transparent}.form-err{color:#a13b2e;font-size:14px;margin:4px 0 12px;min-height:18px}.muted{color:var(--ink-soft)}.center{text-align:center}.auth-wrap{min-height:calc(100vh - 66px);display:flex;align-items:center;justify-content:center;padding:40px 20px}.auth-card{width:100%;max-width:400px}.auth-card h1{font-family:var(--display);color:var(--cypress);font-size:30px;margin:0 0 6px;text-align:center}.auth-card .sub{text-align:center;margin:0 0 22px}.auth-switch{text-align:center;margin-top:18px;font-size:14px}.hero-land{text-align:center;padding:90px 20px 70px;position:relative;overflow:hidden}.hero-land .eyebrow{letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-size:13px;font-weight:700;margin:0 0 18px}.hero-land h1{font-family:var(--display);font-weight:700;font-size:clamp(36px,7vw,62px);color:var(--cypress);margin:0 0 20px;text-wrap:balance}.hero-land p.lead{font-size:clamp(17px,2.4vw,21px);color:var(--ink-soft);max-width:46ch;margin:0 auto 34px;text-wrap:balance}.hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0 70px}.feature{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px 22px;text-align:center}.feature .emoji{font-size:30px}.feature h3{font-family:var(--display);color:var(--cypress);margin:12px 0 8px;font-size:21px}.feature p{margin:0;color:var(--ink-soft);font-size:15px}@media (max-width: 720px){.features{grid-template-columns:1fr}}.land-footer{text-align:center;padding:40px 20px 60px;color:var(--ink-soft);border-top:1px solid var(--line)}.land-footer .bless{font-family:var(--display);font-size:19px;color:var(--cypress);margin-bottom:6px}.promo-frame{max-width:760px;margin:46px auto 0}.promo-video{width:100%;display:block;border-radius:18px;background:#1b1e1c;border:1px solid var(--line);box-shadow:0 18px 50px #1e252047}.section{padding:66px 20px}.section-tint{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-title{font-family:var(--display);font-weight:700;color:var(--cypress);font-size:clamp(27px,4.5vw,40px);text-align:center;margin:0 0 8px}.section-sub{text-align:center;color:var(--ink-soft);max-width:44ch;margin:0 auto 38px;font-size:17px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{text-align:center;padding:10px 14px;position:relative}.step-num{width:62px;height:62px;margin:0 auto 16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:28px;color:#fff;background:linear-gradient(180deg,var(--cypress-2),var(--cypress));box-shadow:0 8px 20px #37463b47}.step h3{font-family:var(--display);color:var(--cypress);font-size:23px;margin:0 0 8px}.step p{color:var(--ink-soft);margin:0;font-size:15.5px}@media (max-width: 720px){.steps{grid-template-columns:1fr;gap:26px}}.features-6{grid-template-columns:repeat(3,1fr)}@media (max-width: 900px){.features-6{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.features-6{grid-template-columns:1fr}}.durable{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:center}.durable-text p{color:var(--ink-soft);font-size:17px}.checks{list-style:none;padding:0;margin:18px 0 0}.checks li{padding:5px 0;color:var(--ink)}.durable-card{display:flex;justify-content:center}.qr-plaque{width:260px;background:#f8f6ef;border:3px solid var(--gold);border-radius:20px;padding:26px 20px;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:0 16px 40px #1e252038}.qr-plaque .pl-candle{font-size:34px;line-height:1}.qr-plaque .pl-name{font-family:var(--display);font-weight:700;color:var(--cypress);font-size:22px}.qr-plaque .pl-qr{width:150px;height:150px;background:url(/qr-demo.png) center/contain no-repeat}.qr-plaque .pl-tag{color:var(--gold);font-family:var(--display);font-size:17px}@media (max-width: 720px){.durable{grid-template-columns:1fr;gap:28px}.durable-text .section-title{text-align:center!important}}.price-card{max-width:430px;margin:0 auto;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:34px 30px;text-align:center;box-shadow:0 16px 44px #1e25201f}.price-kick{color:var(--gold);font-weight:700;letter-spacing:.04em;margin:0 0 6px}.price-num{font-family:var(--display);font-weight:700;color:var(--cypress);font-size:64px;line-height:1;margin-bottom:20px}.price-list{list-style:none;padding:0;margin:0 0 26px;text-align:right}.price-list li{padding:7px 0;border-bottom:1px solid var(--line);color:var(--ink)}.price-list li:last-child{border-bottom:none}.price-foot{color:var(--ink-soft);font-size:14px;margin:18px 0 0}.contact-btns{display:flex;gap:10px;justify-content:center;margin-top:12px;flex-wrap:wrap}.foot-contact{margin:6px 0 10px}.foot-contact a{color:var(--cypress);font-weight:600}.foot-contact .dot{margin:0 10px;color:var(--ink-soft)}.foot-copy{font-size:13px;color:var(--ink-soft);margin-top:10px;opacity:.85}.page-head{display:flex;align-items:center;justify-content:space-between;margin:34px 0 22px;flex-wrap:wrap;gap:14px}.page-head h1{font-family:var(--display);color:var(--cypress);font-size:30px;margin:0}.mem-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:50px}.mem-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.mem-card .thumb{height:130px;background:linear-gradient(135deg,#2c352e,#37463b);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;color:#fff9;font-size:13px}.mem-card .body{padding:16px 18px;flex:1;display:flex;flex-direction:column;gap:10px}.mem-card h3{font-family:var(--display);color:var(--cypress);margin:0;font-size:20px}.mem-card .card-actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}.mem-card .card-actions .btn{padding:8px 16px;font-size:14px}.empty-state{text-align:center;padding:60px 20px;color:var(--ink-soft)}.empty-state .big{font-size:46px;margin-bottom:10px}.seg{display:inline-flex;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:4px;gap:4px}.seg button{border:none;background:none;font-family:var(--body);font-size:15px;font-weight:600;color:var(--cypress-2);padding:9px 20px;border-radius:999px;cursor:pointer}.seg button.on{background:var(--cypress);color:#fff}.spinner{text-align:center;padding:70px 20px;color:var(--ink-soft)}.notice{background:#e9b45e29;border:1px solid rgba(169,114,46,.4);border-radius:12px;padding:14px 18px;margin:16px 0;font-size:14px;color:var(--ink)}.qr-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#1e25208c;display:flex;align-items:center;justify-content:center;padding:20px}.qr-modal-card{position:relative;background:var(--paper);border-radius:18px;padding:30px 32px;text-align:center;max-width:340px;width:100%;box-shadow:0 20px 60px #00000059}.qr-modal-card h3{font-family:var(--display);color:var(--cypress);margin:0 0 4px;font-size:24px}.qr-close{position:absolute;top:14px;left:14px;width:34px;height:34px;border-radius:50%;background:transparent;border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;font-size:15px}.qr-close:hover{background:#fff}.admin-table{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.admin-table th,.admin-table td{text-align:right;padding:11px 14px;border-bottom:1px solid var(--line);font-size:15px}.admin-table th{background:#37463b0f;color:var(--cypress-2);font-weight:600}.admin-table tr:last-child td{border-bottom:none}.admin-table code{background:#37463b14;padding:2px 8px;border-radius:6px;font-size:14px}.pill{display:inline-block;padding:3px 12px;border-radius:999px;font-size:13px;font-weight:600}.pill-on{background:#8f9c8847;color:var(--cypress)}.pill-off{background:#e9b45e40;color:var(--gold)}.print-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#fff;overflow:auto}.print-bar{position:sticky;top:0;display:flex;gap:12px;align-items:center;padding:14px 20px;background:var(--paper);border-bottom:1px solid var(--line)}.print-sheet{display:grid;grid-template-columns:repeat(2,232px);gap:22px;padding:26px;justify-content:center}.mcard{width:232px;aspect-ratio:10 / 15;box-sizing:border-box;background:#f4f2eb;border:1.5px dashed #b7b1a1;border-radius:16px;padding:5%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3%;text-align:center;break-inside:avoid;overflow:hidden}.mcard-candle{width:32%;line-height:0}.mcard-candle svg{display:block;width:100%;height:auto}.mcard-name{font-family:Frank Ruhl Libre,David Libre,Georgia,serif;font-weight:700;color:#37463b;font-size:28px;line-height:1.12}.mcard-qr{width:62%;line-height:0}.mcard-qr img{width:100%;height:auto;display:block}.mcard-tag{font-size:18px;color:#8a6a30}.mcard-serial{font-family:monospace;font-size:9px;letter-spacing:1px;color:#b3a98f}.print-sheet.stickers{grid-template-columns:repeat(3,190px);gap:16px}.print-sheet.stickers .mcard{width:190px;aspect-ratio:7 / 10}.print-sheet.stickers .mcard-name{font-size:23px}.print-sheet.stickers .mcard-tag{font-size:15px}.print-sheet.stickers .mcard-serial{font-size:8px}@media (max-width: 560px){.app-container{padding:0 14px}.page-head h1{font-size:25px}.site-header{padding:12px 14px}.site-header .brand{font-size:20px}.seg button{padding:8px 13px;font-size:14px}.admin-table th,.admin-table td{padding:9px 10px;font-size:14px;white-space:nowrap}.print-bar{flex-wrap:wrap;gap:8px;padding:12px 14px}.print-bar .btn{padding:9px 16px;font-size:14px}.print-sheet,.print-sheet.stickers{grid-template-columns:1fr;justify-items:center;padding:16px;gap:16px}.print-sheet .mcard,.print-sheet.stickers .mcard{width:100%;max-width:300px}}@media print{@page{size:A4;margin:8mm}.no-print{display:none!important}.print-overlay{position:static;background:#fff}.print-sheet{grid-template-columns:100mm;gap:0;padding:0;justify-content:center}.mcard{width:100mm;height:150mm;aspect-ratio:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact}.mcard-name{font-size:34pt}.mcard-tag{font-size:18pt}.mcard-serial{font-size:7pt}.print-sheet.stickers{grid-template-columns:repeat(2,70mm);gap:8mm 10mm}.print-sheet.stickers .mcard{width:70mm;height:100mm;aspect-ratio:auto}.print-sheet.stickers .mcard-name{font-size:23pt}.print-sheet.stickers .mcard-tag{font-size:13pt}.print-sheet.stickers .mcard-serial{font-size:6pt}}.wrap{--bg: #e7e4db;--paper: #f4f2eb;--ink: #242927;--ink-soft: #4d554f;--cypress: #37463b;--cypress-2: #54655a;--gold: #a9722e;--gold-glow: #e9b45e;--sage: #8f9c88;--line: rgba(55, 70, 59, .16);--display: "Frank Ruhl Libre", "David Libre", "Narkisim", "Georgia", serif;--body: "Assistant", "Heebo", "Segoe UI", "Arial", sans-serif;--maxw: 760px;direction:rtl;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.75;padding:0 0 120px;min-height:100vh}.wrap *{box-sizing:border-box}.wrap .col{max-width:var(--maxw);margin-inline:auto;padding:0 20px}.wrap .hero{position:relative;text-align:center;padding:64px 20px 46px;color:#fff;overflow:hidden}.wrap .hero .bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 30%;background-color:var(--cypress)}.wrap .hero .bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1e252085,#1e2520a8 55%,#1e2520d1)}.wrap .hero-inner{position:relative;z-index:1}.wrap .eyebrow{font-size:13px;letter-spacing:.26em;color:var(--gold-glow);text-transform:uppercase;margin:0 0 20px;text-shadow:0 1px 6px rgba(0,0,0,.4)}.wrap h1.title{font-family:var(--display);font-weight:600;font-size:clamp(32px,6.5vw,50px);color:#fff;margin:0 0 30px;text-wrap:balance;text-shadow:0 2px 14px rgba(0,0,0,.5)}.wrap .parents{display:flex;gap:20px;justify-content:center;align-items:flex-start}.wrap .parent{flex:1;max-width:260px;display:flex;flex-direction:column;align-items:center}.wrap .heart{align-self:center;color:var(--gold-glow);font-size:22px;margin-top:50px;flex:none;text-shadow:0 1px 6px rgba(0,0,0,.4)}.wrap .portrait{width:132px;height:132px;border-radius:50%;overflow:hidden;background:#cfd6c9;border:3px solid rgba(255,255,255,.9);box-shadow:0 10px 30px #0006;position:relative;display:flex;align-items:center;justify-content:center}.wrap .portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}.wrap .portrait .ph-empty{color:var(--cypress-2);font-size:12px;padding:8px;text-align:center}.wrap .p-name{font-family:var(--display);font-weight:600;font-size:clamp(22px,4vw,27px);color:#fff;margin:15px 0 2px;text-wrap:balance;text-shadow:0 2px 10px rgba(0,0,0,.5)}.wrap .p-rel{font-size:13px;letter-spacing:.15em;color:var(--gold-glow);margin:0 0 5px}.wrap .p-dates{font-variant-numeric:tabular-nums;color:#ffffffe6;font-size:15px}.wrap .epitaph{font-family:var(--display);font-style:italic;font-size:20px;color:#fffffff0;max-width:38ch;margin:34px auto 0;text-wrap:balance;text-shadow:0 1px 8px rgba(0,0,0,.5)}@media (max-width: 560px){.wrap .parents{flex-direction:column;align-items:center;gap:30px}.wrap .parent{max-width:100%}.wrap .heart{margin:0;transform:rotate(90deg)}}.wrap .tabs{position:sticky;top:0;z-index:20;background:#f4f2ebf5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);box-shadow:0 2px 10px #37463b0f}.wrap .tabs-inner{display:flex;gap:4px;overflow-x:auto;max-width:var(--maxw);margin-inline:auto;padding:0 12px;scrollbar-width:none}.wrap .tabs-inner::-webkit-scrollbar{display:none}.wrap .tabs button{flex:none;font-family:var(--body);font-size:15px;font-weight:600;color:var(--cypress-2);background:none;border:none;border-bottom:3px solid transparent;padding:15px 16px;cursor:pointer;white-space:nowrap;transition:color .2s}.wrap .tabs button:hover{color:var(--cypress)}.wrap .tabs button.active{color:var(--cypress);border-bottom-color:var(--gold)}.wrap .panels{padding-top:14px}.wrap .panel{display:none;animation:mem-fade .4s ease}.wrap .panel.active{display:block}@keyframes mem-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.wrap section{margin:40px auto}.wrap .sec-label{font-size:12px;letter-spacing:.3em;color:var(--cypress-2);text-transform:uppercase;margin:0 0 8px;text-align:center}.wrap h2{font-family:var(--display);font-weight:600;font-size:clamp(26px,4.5vw,34px);color:var(--cypress);text-align:center;margin:0 0 26px}.wrap .parent-head{text-align:center;margin:34px 0 20px}.wrap .parent-head:first-child{margin-top:0}.wrap .parent-head .ph-name{font-family:var(--display);font-weight:600;font-size:clamp(23px,4.5vw,30px);color:var(--cypress);margin:2px 0 0}.wrap .bio p{margin:0 0 18px}.wrap .divider{display:flex;align-items:center;gap:16px;margin:40px auto;max-width:320px}.wrap .divider:before,.wrap .divider:after{content:"";height:1px;flex:1;background:var(--line)}.wrap .divider span{color:var(--gold);font-size:14px}.wrap .timeline{position:relative;padding-right:26px;margin-top:22px}.wrap .timeline:before{content:"";position:absolute;top:6px;bottom:6px;right:6px;width:2px;background:var(--line)}.wrap .tl{position:relative;padding:0 0 28px}.wrap .tl:before{content:"";position:absolute;right:-25px;top:6px;width:13px;height:13px;border-radius:50%;background:var(--paper);border:2px solid var(--gold)}.wrap .tl .yr{font-variant-numeric:tabular-nums;color:var(--gold);font-weight:700;font-size:15px}.wrap .tl h3{font-family:var(--display);font-weight:600;margin:2px 0 4px;font-size:20px;color:var(--ink)}.wrap .tl p{margin:0;color:var(--ink-soft);font-size:16px}.wrap .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.wrap .ph{position:relative;aspect-ratio:1/1;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#dcd8cc,#cfd6c9);display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}.wrap .ph img{width:100%;height:100%;object-fit:cover;display:block}.wrap .ph svg{width:34px;height:34px;opacity:.5;color:var(--cypress-2)}.wrap .ph .cap{position:absolute;left:0;right:0;bottom:0;padding:16px 8px 7px;font-size:12px;color:#fff;background:linear-gradient(transparent,#141816c7);text-align:center;opacity:0;transition:opacity .3s}.wrap .ph:hover .cap{opacity:1}.wrap .note{text-align:center;color:var(--ink-soft);font-size:14px;margin:14px 0 0;opacity:.85}.wrap .media-row{display:grid;gap:12px;margin-top:26px}.wrap .video{aspect-ratio:16/9;border-radius:12px;background:linear-gradient(135deg,#2c352e,#37463b);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.wrap .play{width:60px;height:60px;border-radius:50%;background:#ffffff24;display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(255,255,255,.6)}.wrap .play:before{content:"";border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent #fff;margin-left:-3px}.wrap .video span{position:absolute;bottom:12px;color:#ffffffb3;font-size:13px}.wrap .video video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#000;z-index:1}.wrap .video .v-ph{position:relative;z-index:0;display:flex;flex-direction:column;align-items:center;gap:8px;color:#ffffffb3}.wrap .v-upload{position:absolute;z-index:3;bottom:10px;left:10px;font-family:var(--body);font-size:13px;font-weight:600;background:#37463bd9;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:8px;padding:8px 12px;cursor:pointer}.wrap .music{display:flex;align-items:center;gap:16px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px 18px}.wrap .music .disc{width:44px;height:44px;border-radius:50%;flex:none;background:radial-gradient(circle,#f4f2eb 22%,var(--cypress) 24%,var(--cypress) 100%);box-shadow:inset 0 0 0 1px #0000001a}.wrap .music .mt{flex:1}.wrap .music .mt b{font-family:var(--display);font-size:17px;color:var(--ink);display:block}.wrap .music .mt small{color:var(--ink-soft)}.wrap .music button.play-s{background:none;border:1px solid var(--cypress);color:var(--cypress);width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:13px;flex:none}.wrap .music button.play-s:disabled{opacity:.4;cursor:default}.wrap .music .disc.spin{animation:mem-spin 3s linear infinite}@keyframes mem-spin{to{transform:rotate(360deg)}}.wrap .music .song-up{font-family:var(--body);font-size:13px;font-weight:600;background:var(--paper);color:var(--cypress);border:1px solid var(--cypress);border-radius:8px;padding:7px 12px;cursor:pointer;flex:none}.wrap .music .song-del{background:#a13b2ef2;color:#fff;border:2px solid #fff;width:26px;height:26px;border-radius:50%;cursor:pointer;font-size:12px;flex:none;padding:0}.wrap .candlebox{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:40px 24px;text-align:center;max-width:460px;margin:0 auto}.wrap .candle{width:52px;height:78px;margin:0 auto 24px;position:relative}.wrap .flame{position:absolute;top:0;left:50%;width:17px;height:32px;transform:translate(-50%);background:radial-gradient(circle at 50% 70%,var(--gold-glow) 0%,var(--gold) 55%,rgba(169,114,46,0) 72%);border-radius:50% 50% 45% 45%/62% 62% 38% 38%;filter:blur(.4px);animation:mem-sway 3.4s ease-in-out infinite;transform-origin:50% 100%}.wrap .flame-core{position:absolute;top:7px;left:50%;width:7px;height:17px;transform:translate(-50%);background:radial-gradient(circle at 50% 70%,#fff6df 0%,var(--gold-glow) 60%,rgba(233,180,94,0) 75%);border-radius:50%;animation:mem-flick 2.1s ease-in-out infinite}.wrap .wick{position:absolute;top:30px;left:50%;width:2px;height:7px;transform:translate(-50%);background:#2b2b2b}.wrap .stick{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:20px;height:44px;border-radius:5px;background:linear-gradient(180deg,#f6f1e6,#e7ddc9);box-shadow:inset 0 0 0 1px #0000000d}@keyframes mem-sway{0%,to{transform:translate(-50%) rotate(-3deg)}50%{transform:translate(-50%) rotate(3deg)}}@keyframes mem-flick{0%,to{opacity:.85;height:17px}50%{opacity:1;height:21px}}.wrap .lightbtn{font-family:var(--body);font-size:16px;font-weight:600;color:#fff;background:linear-gradient(180deg,var(--gold),#8f5f24);border:none;border-radius:999px;padding:13px 30px;cursor:pointer;box-shadow:0 6px 18px #a9722e59;transition:transform .15s,box-shadow .15s}.wrap .lightbtn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #a9722e6b}.wrap .count{margin:20px 0 0;color:var(--ink-soft)}.wrap .count b{color:var(--gold);font-size:26px;font-variant-numeric:tabular-nums;font-family:var(--display)}.wrap .lit{font-size:24px;margin:16px 0 0;min-height:30px;letter-spacing:4px}.wrap form.guest{display:grid;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px}.wrap form.guest input,.wrap form.guest textarea{font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:9px;padding:11px 13px;width:100%;resize:vertical}.wrap form.guest input:focus,.wrap form.guest textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:transparent}.wrap form.guest button{justify-self:start;background:var(--cypress);color:#fff;border:none;border-radius:9px;padding:11px 24px;font-family:var(--body);font-size:15px;font-weight:600;cursor:pointer}.wrap .msgs{display:grid;gap:14px;margin:22px 0 0}.wrap .msg{background:var(--paper);border:1px solid var(--line);border-right:3px solid var(--gold);border-radius:10px;padding:15px 18px}.wrap .msg .txt{margin:0 0 8px;color:var(--ink)}.wrap .msg .by{font-size:13px;color:var(--cypress-2)}.wrap .msg .by b{color:var(--ink)}.wrap .yahr{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wrap .yahr.single{grid-template-columns:1fr;max-width:340px;margin-inline:auto}.wrap .yahr .card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:18px;text-align:center}.wrap .yahr .card .who{font-family:var(--display);font-size:18px;color:var(--cypress);margin-bottom:8px}.wrap .yahr .card .d{font-family:var(--display);font-size:20px;color:var(--gold)}.wrap .yahr .card .t{font-size:14px;color:var(--ink-soft);margin-top:2px}@media (max-width: 520px){.wrap .yahr{grid-template-columns:1fr}}.wrap .grave-sec{text-align:center}.wrap .grave{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:linear-gradient(135deg,#dcd8cc,#cfd6c9);min-height:260px;display:flex;align-items:center;justify-content:center;margin-top:8px}.wrap .grave img{width:100%;display:block}.wrap .grave-ph{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--cypress-2);padding:40px}.wrap .grave-ph svg{width:44px;height:44px;opacity:.5}.wrap .grave-ph span{font-size:14px}.wrap:not(.editing) .grave.has-img{cursor:zoom-in}.wrap .bio img.story-img{display:block;max-width:100%;border-radius:10px;margin:16px auto;box-shadow:0 6px 18px #37463b24;border:1px solid var(--line)}.wrap:not(.editing) .bio img.story-img{cursor:zoom-in}.wrap .add-img-btn{display:none}.wrap.editing .add-img-btn{display:inline-flex;align-items:center;gap:6px;margin:6px 0 10px;font-family:var(--body);font-size:13px;font-weight:600;background:var(--paper);color:var(--cypress);border:1px solid var(--cypress);border-radius:8px;padding:7px 14px;cursor:pointer}.wrap .tl img.tl-img{display:block;max-width:100%;border-radius:9px;margin:10px 0 0;border:1px solid var(--line)}.wrap .del-img{display:none;position:absolute;top:6px;left:6px;z-index:4;width:28px;height:28px;border-radius:50%;background:#a13b2ef2;color:#fff;border:2px solid #fff;font-size:13px;line-height:1;cursor:pointer;align-items:center;justify-content:center;padding:0;box-shadow:0 2px 8px #0000004d}.wrap.editing .ph .del-img,.wrap.editing .video.has-video .del-img{display:flex}.wrap .chapter{border:1px solid var(--line);border-radius:12px;margin:0 0 12px;overflow:hidden;background:var(--paper)}.wrap .ch-head{display:flex;align-items:center;gap:10px;padding:15px 18px;cursor:pointer;-webkit-user-select:none;user-select:none}.wrap .ch-title{flex:1;margin:0;text-align:right;font-family:var(--display);font-weight:600;font-size:clamp(19px,3.6vw,24px);color:var(--cypress)}.wrap .ch-arrow{color:var(--gold);font-size:15px;transition:transform .25s;flex:none}.wrap .chapter.open .ch-arrow{transform:rotate(180deg)}.wrap .ch-body{display:none;padding:0 20px 6px}.wrap .chapter.open .ch-body{display:block}.wrap .ch-body p{margin:0 0 18px}.wrap .ch-body img.story-img{display:block;max-width:100%;border-radius:10px;margin:16px auto;box-shadow:0 6px 18px #37463b24;border:1px solid var(--line)}.wrap .del-ch{display:none;background:none;border:none;color:#a13b2e;cursor:pointer;font-size:16px;flex:none}.wrap.editing .del-ch{display:block}.wrap .chapter .add-img-btn{margin:0 20px 16px}.wrap .qr-wrap{background:linear-gradient(180deg,#2c352e,#37463b);border-radius:18px;padding:34px 26px;text-align:center;color:#eee;margin-top:26px}.wrap .qr-wrap .sec-label{color:var(--sage)}.wrap .qr-wrap h2{color:#f4f2eb;margin-bottom:18px}.wrap .qr-wrap .qr-box{display:flex;justify-content:center}.wrap .qr-wrap .qr-note{color:#f4f2ebd1;max-width:40ch;margin:16px auto 0;font-size:14px}.wrap .qr-wrap .btn-ghost{background:#f4f2eb1a;color:#f4f2eb;border-color:#ffffff4d}.wrap .qr-wrap .btn-ghost:hover{background:#f4f2eb33}.wrap footer{text-align:center;color:var(--ink-soft);font-size:15px;margin-top:56px}.wrap footer .bless{font-family:var(--display);font-size:20px;color:var(--cypress);margin-bottom:6px}.wrap footer .flower{color:var(--gold)}.wrap.editing [contenteditable=true]{outline:1.5px dashed rgba(169,114,46,.55);outline-offset:4px;border-radius:4px;cursor:text}.wrap.editing [contenteditable=true]:hover{background:#e9b45e24}.wrap.editing [contenteditable=true]:focus{outline:2px solid var(--gold);background:#e9b45e1f}.wrap .editctl{display:none;gap:8px;justify-content:center;margin:14px 0 0;flex-wrap:wrap}.wrap.editing .editctl{display:flex}.wrap .editctl button{font-family:var(--body);font-size:13px;font-weight:600;cursor:pointer;background:var(--paper);color:var(--cypress);border:1px solid var(--cypress);border-radius:8px;padding:7px 14px}.wrap .updot{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:#37463b8c;color:#fff;align-items:center;justify-content:center;font-size:12px;font-weight:600;cursor:pointer;text-align:center;padding:6px;z-index:2}.wrap.editing .ph .updot,.wrap.editing .portrait .updot,.wrap.editing .grave .updot{display:flex}.wrap .del-tl{display:none;position:absolute;left:0;top:4px;background:none;border:none;color:#a13b2e;cursor:pointer;font-size:15px}.wrap.editing .tl .del-tl{display:block}.wrap .bg-edit{display:none}.wrap.editing .bg-edit{display:inline-flex;align-items:center;gap:6px;position:absolute;top:12px;left:12px;z-index:3;font-family:var(--body);font-size:13px;font-weight:600;background:#37463bb8;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:8px;padding:8px 12px;cursor:pointer}.wrap .tl-photo-btn{display:none;margin-top:8px;font-family:var(--body);font-size:12px;font-weight:600;background:var(--paper);color:var(--cypress);border:1px solid var(--cypress);border-radius:7px;padding:5px 11px;cursor:pointer}.wrap.editing .tl .tl-photo-btn{display:inline-block}.mem-editbar{position:fixed;bottom:18px;right:18px;z-index:50;direction:rtl;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;max-width:94vw}.mem-editbar button{font-family:Assistant,Heebo,sans-serif;font-size:14px;font-weight:600;cursor:pointer;border:none;border-radius:999px;padding:11px 18px;box-shadow:0 6px 20px #24292747}.mem-editbar .mem-toggle{background:#37463b;color:#fff}.mem-editbar .mem-toggle.on{background:#a9722e}.mem-editbar .mem-publish{background:#a9722e;color:#fff}.mem-editbar .mem-ghost{background:#f4f2eb;color:#242927;border:1px solid rgba(55,70,59,.16)}.mem-savehint{position:fixed;bottom:70px;right:18px;z-index:51;background:#37463b;color:#fff;padding:9px 15px;border-radius:8px;font-size:13px;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s;pointer-events:none;max-width:80vw}.mem-savehint.show{opacity:1;transform:none}.mem-badge{display:none}.wrap.editing~.mem-badge,.mem-badge.show{display:block;position:fixed;top:14px;right:50%;transform:translate(50%);z-index:49;background:#a9722e;color:#fff;padding:7px 18px;border-radius:999px;font-size:13px;font-weight:600;box-shadow:0 4px 14px #a9722e66}.lightbox{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#121614ed;align-items:center;justify-content:center;padding:24px;flex-direction:column}.lightbox.show{display:flex}.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center}.lightbox img{max-width:94vw;max-height:82vh;border-radius:8px;box-shadow:0 20px 60px #00000080;object-fit:contain}.lightbox figcaption{color:#f4f2eb;font-family:Frank Ruhl Libre,serif;font-size:18px;margin-top:16px;text-align:center;direction:rtl}.lightbox .x{position:absolute;top:18px;left:18px;width:44px;height:44px;border-radius:50%;background:#f4f2eb26;color:#fff;border:1px solid rgba(255,255,255,.4);font-size:18px;cursor:pointer}.lightbox .x:hover{background:#f4f2eb47}.lightbox .nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:56px;height:56px;border-radius:50%;background:#1e25209e;color:#fff;border:2px solid rgba(255,255,255,.75);font-size:30px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 4px 16px #0006}.lightbox .nav:hover{background:#1e2520d9}.lightbox .nav.prev{right:14px}.lightbox .nav.next{left:14px}.wrap:not(.editing) .ph.has-img{cursor:zoom-in}@media (max-width: 560px){.lightbox .nav{width:52px;height:52px;font-size:28px}.lightbox .nav.prev{right:8px}.lightbox .nav.next{left:8px}}
