:root{--paper:#faf8f1;--ink:#404a3e;--accent:#48543e;--wash:#e9eee2;--line:#cdd4c5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.55 Manrope,system-ui,sans-serif}.memory-shell a{color:inherit}.memory-shell button,.memory-shell input,.memory-shell select,.memory-shell textarea{font:inherit;color:inherit}.memory-shell button,.memory-shell a,.memory-shell input,.memory-shell select,.memory-shell textarea{touch-action:manipulation}.memory-shell button,.memory-shell select,.memory-shell input,.memory-shell textarea{border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:14px 18px}.memory-shell button{cursor:pointer;min-height:48px}.memory-shell button:hover{background:var(--wash)}.memory-shell :focus-visible{outline:3px solid var(--accent);outline-offset:4px}.memory-shell{max-width:1160px;margin:auto;padding:24px 36px}.memory-shell nav{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:12px 0 24px}.memory-shell h1,.memory-shell h2{font-family:Prata,Georgia,serif;font-weight:400;line-height:1.14;overflow-wrap:normal;hyphens:none}.memory-shell h1{font-size:clamp(36px,5vw,64px);max-width:750px}.memory-shell h2{font-size:30px;margin:0}.memory-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:64px 0}.cover{width:34%;max-width:340px;max-height:420px;object-fit:contain}.primary{display:inline-block;background:var(--accent);color:white;text-decoration:none;border:0;padding:16px 24px;border-radius:40px}.primary:hover{background:var(--ink)}.settings{padding:22px;border:1px solid var(--line);border-radius:20px;margin-bottom:24px}.memory-shell summary{cursor:pointer;font-weight:600;min-height:32px}.memory-shell form{display:grid;gap:20px}.memory-shell label{display:grid;gap:8px}.memory-shell label:has([type=checkbox]){display:flex;align-items:center;gap:12px}.memory-shell input[type=checkbox]{width:22px;height:22px}.memory-shell fieldset{border:1px solid var(--line);padding:18px;display:grid;gap:14px}.memory-shell input,.memory-shell textarea,.memory-shell select{min-width:0;width:100%}.memory-shell input[type=checkbox]{width:22px}.settings form{margin-top:24px}.filters{display:grid;grid-template-columns:1fr 230px;gap:16px;margin:28px 0}.materials{columns:2;column-gap:24px}.material{break-inside:avoid;display:inline-block;width:100%;border:1px solid var(--line);background:var(--wash);border-radius:22px;overflow:hidden;margin:0 0 24px}.material img{display:block;width:100%;height:auto;max-height:480px;object-fit:cover}.material-content{padding:26px}.material header{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.material header span{font-size:16px}.message{white-space:normal;overflow-wrap:normal}.material audio,.voice-upload audio{display:block;width:100%;max-width:100%;margin:22px 0}.actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:20px;border-top:1px solid var(--line)}.actions button{flex:1}.downloads{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0}.add-memory{max-width:740px;margin:60px auto;padding:32px;background:var(--wash);border-radius:24px}.add-memory h2{margin-bottom:24px}.voice-upload{padding:20px;border:1px solid var(--line);border-radius:18px}.voice-upload button{margin-bottom:12px}.memory-shell footer{margin-top:90px;padding:24px;text-align:center;font-size:14px}.memory-shell footer a{text-decoration:none}.memory-shell [hidden]{display:none!important}body.memories-wedding-blue{--paper:#f5f9fd;--ink:#25425c;--accent:#466d89;--wash:#dfedf5;--line:#acc6d8}body.memories-wedding-wine{--paper:#fbf4ec;--ink:#592930;--accent:#742c3b;--wash:#f1e2dc;--line:#d7b4aa}body.memories-thin-jasmine{--paper:#f2eee3;--ink:#24483a;--accent:#254c3d;--wash:#e8ecde;--line:#c6d0bc}body.memories-silver-forever{--paper:#f7f7f4;--ink:#393f40;--accent:#51595a;--wash:#e9ebea;--line:#c8cdcb}body.memories-silver-forever h1{text-transform:uppercase;font-family:system-ui;font-weight:300;letter-spacing:.02em}body.memories-wedding-blue .cover{border-radius:50% 50% 0 0}body.memories-wedding-wine h1{font-style:italic}@media(max-width:600px){.memory-shell{padding:18px}.memory-heading{display:block;padding:36px 0}.cover{width:100%;max-width:100%;margin-top:24px;max-height:360px}.materials{columns:1}.material-content{padding:20px}.material header{flex-wrap:wrap}.memory-shell h2{font-size:26px}.filters{grid-template-columns:1fr}.add-memory{padding:20px;margin:40px 0}.actions{display:grid;grid-template-columns:1fr}.voice-upload{padding:14px}}.demo-language{display:flex;align-items:end;gap:16px;margin:24px 0}.demo-language label{flex:1}.demo-templates{flex-wrap:wrap;justify-content:start;font-size:16px}body.memories-thin-jasmine .memory-heading{background-image:url("/static/images/invitation-art/jasmine-border-fine-v2.128a8cf0ced8.png");background-position:right center;background-size:auto 100%;background-repeat:no-repeat;padding-inline-end:70px}body.memories-wedding-wine .memory-heading{border-bottom:1px solid var(--line)}@media(max-width:600px){.demo-language{display:grid}body.memories-thin-jasmine .memory-heading{padding-inline-end:26px}}

body.memories-body{font-family:Manrope,system-ui,sans-serif}.memories-body:dir(rtl){font-family:"Noto Sans Arabic",Manrope,sans-serif}.memories-body:dir(rtl) .memory-shell :is(h1,h2){font-family:"Noto Naskh Arabic",serif}.memories-body .site-header{background:#fffaf2}

/* Consistent dropdown chevrons, including right-to-left languages. */
.memory-shell select{appearance:none;-webkit-appearance:none;padding-inline-end:52px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%23657266' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:20px 20px;background-position:right 20px center;cursor:pointer}
.memory-shell:dir(rtl) select{background-position:left 20px center}
@media(forced-colors:active){.memory-shell select{appearance:auto;-webkit-appearance:auto;background-image:none}}
