.manifested-list { display: grid; gap: 1rem; }
.wall-controls { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin: 28px 0 18px; }
.wall-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.wall-filters button { border: 1px solid #cec6b8; border-radius: 999px; background: #faf7f1; color: #514d49; min-height: 42px; padding: 8px 14px; font: 500 12px 'DM Sans', sans-serif; }
.wall-filters button[aria-pressed="true"] { background: #29302b; color: #fff9ef; border-color: #29302b; }
.wall-controls label { display: grid; gap: 5px; color: #77756e; font: 500 10px 'DM Mono', monospace; letter-spacing: .08em; }
.wall-controls select { min-height: 42px; border: 1px solid #cec6b8; border-radius: 7px; background: #faf7f1; color: #29302b; padding: 7px 10px; font: 500 12px 'DM Sans', sans-serif; }
.manifested-card { min-width: 0; }
.released-card { background: #e4eaf0; border: 1px solid #bdcbd7; }
.released-card span, .released-card > i { color: #627b95; }
.released-card .manifest-revisit { border-color: #a8bacb; color: #42566a; }
.manifested-card h2, .manifested-card p { overflow-wrap: anywhere; }
.manifested-card .manifested-origin, .manifested-card .manifested-became { display: block; margin-top: .6rem; color: #72675f; line-height: 1.45; }
.manifested-card .manifested-became { font-family: Fraunces, Georgia, serif; font-size: 1rem; color: #79605c; }
.manifested-text-card { min-height: 185px; grid-template-columns: minmax(0, 1fr) auto; background: #f4eee4; }
.manifested-card.released-card { background: #e4eaf0; border-color: #bdcbd7; }
.manifested-card.released-card span, .manifested-card.released-card > i { color: #627b95; }
.manifested-text-card > div { min-width: 0; padding: .7rem 1rem; }
.manifested-text-card > i { align-self: start; margin: 1.2rem; }
.manifest-revisit { display: block; margin-top: .9rem; padding: .45rem .8rem; min-height: 36px; border: 1px solid #bba99a; border-radius: 999px; color: #574a42; background: transparent; cursor: pointer; font: 500 .75rem 'DM Sans', sans-serif; }
.manifest-revisit:hover { background: #eee4d7; }
.manifest-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: .9rem; }
.manifest-actions .manifest-revisit { margin-top: 0; min-height: 44px; }
.manifest-share { min-height: 44px; padding: .45rem .8rem; border: 1px solid #bba99a; border-radius: 999px; color: #574a42; background: transparent; cursor: pointer; font: 500 .75rem 'DM Sans', sans-serif; }
.manifest-share:hover { background: #eee4d7; }
.released-card .manifest-share { border-color: #a8bacb; color: #42566a; }
#manifestDialog { position: fixed; inset: 0; width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; overflow-y: auto; border: 0; background: linear-gradient(150deg, #1a1633 0%, #3d2e4a 55%, #c97b3c 150%); color: #f5efe6; }
#manifestDialog::backdrop { background: #141029; }
#manifestDialog.released-moment { background: linear-gradient(150deg, #1a1633 0%, #2e3a4a 55%, #8ba0b8 150%); }
#manifestDialog.released-moment .moment-mark, #manifestDialog.released-moment .moment-witness span, #manifestDialog.released-moment .moment-journey li span { color: #b9d0e8; }
#manifestDialog.released-moment .moment-journey li { border-left-color: #8ba0b8; }
#manifestDialog.released-moment #completeManifestation { background: #c4d6e4; }
#manifestDialog form { position: relative; width: min(100%, 760px); min-height: 100dvh; margin: auto; padding: clamp(36px, 7vw, 80px) clamp(20px, 6vw, 72px); display: grid; align-content: start; gap: 24px; background: transparent; }
#manifestDialog .dialog-close { color: #f5efe6; background: #fff2; border-radius: 50%; width: 42px; height: 42px; }
#manifestDialog .eyebrow { color: #e3c8a9; }
#manifestDialog h2 { font: 500 clamp(44px, 8vw, 82px)/.94 Fraunces, Georgia, serif; letter-spacing: -.04em; margin: 0; }
#manifestDialog .moment-mark { font-size: 40px; color: #e8ba77; }
#manifestDialog .moment-recall { background: #fff1; border: 1px solid #fff3; padding: 16px; border-radius: 16px; }
#manifestDialog .moment-recall strong { color: #fff7ec; }
#manifestDialog .moment-recall span { color: #e8ba77; }
.moment-story { display: grid; gap: 28px; }
.moment-source-date { margin: -8px 0 0; color: #d2c4c5; font-size: 12px; }
.moment-witness { padding: 26px 0; border-top: 1px solid #fff4; border-bottom: 1px solid #fff4; display: grid; gap: 10px; }
.moment-witness span { font: 500 10px 'DM Mono', monospace; letter-spacing: .15em; color: #e8ba77; }
.moment-witness strong { font: 500 clamp(29px, 5vw, 46px)/1.1 Fraunces, Georgia, serif; }
.moment-witness p { margin: 0; color: #dfd0d2; line-height: 1.5; }
.moment-journey h3 { font: 500 clamp(27px, 4vw, 37px)/1.1 Fraunces, Georgia, serif; margin: 0 0 10px; }
.moment-journey-note { color: #d6c7c9; line-height: 1.5; margin: 0 0 18px; font-size: 13px; }
.moment-journey ol { display: grid; gap: 12px; max-height: 310px; overflow-y: auto; list-style: none; margin: 0; padding: 0 8px 0 0; }
.moment-journey li { border-left: 2px solid #d4a857; padding: 9px 0 9px 17px; background: #fff1; border-radius: 0 8px 8px 0; overflow-wrap: anywhere; }
.moment-journey li span { color: #e8ba77; font: 500 10px 'DM Mono', monospace; letter-spacing: .08em; }
.moment-journey li p { margin: 7px 0 0; line-height: 1.45; }
#manifestDialog label { color: #f5efe6; }
#manifestDialog textarea, #manifestDialog input { background: #fffaf4; color: #29302b; border-color: #e9daca; }
#manifestDialog #completeManifestation { border: 0; background: #e7ba79; color: #281e32; border-radius: 8px; min-height: 48px; font-weight: 700; }
.moment-link { display: grid; gap: 9px; padding: 18px 0 0; border-top: 1px solid #fff4; min-width: 0; }
.moment-link > span { color: #e8ba77; font: 500 10px 'DM Mono', monospace; letter-spacing: .15em; }
.moment-link > div { display: flex; gap: 8px; min-width: 0; }
#manifestDialog .moment-link input { min-width: 0; flex: 1; padding: 10px 12px; border-radius: 8px; font: 12px 'DM Mono', monospace; }
.moment-link button { min-height: 44px; padding: 0 15px; border: 1px solid #f5efe6; border-radius: 8px; background: #fff2; color: #f5efe6; cursor: pointer; font: 600 12px 'DM Sans', sans-serif; }
.moment-link small { color: #d6c7c9; line-height: 1.45; }
.moment-link #momentLinkStatus { min-height: 1em; color: #e8ba77; }
@media (max-width: 380px) { #manifestDialog form { gap: 19px; padding: 58px 18px 30px; } #manifestDialog .moment-recall img { width: 58px; height: 58px; } }
@media (max-width: 380px) { .moment-link > div { flex-wrap: wrap; } .moment-link input { flex-basis: 100%; } .moment-link button { width: 100%; } }
@media (max-width: 380px) { .wall-controls { align-items: stretch; } .wall-controls label { width: 100%; } .wall-controls select { width: 100%; } }
#manifestDialog .moment-recall { gap: 1rem; }
#manifestDialog .moment-recall img[hidden] { display: none; }
#manifestDialog label { display: block; }
#manifestDialog input { width: 100%; }
.pin-grid article[data-pin-id] { position: relative; }
.pin-manifest { position: absolute; z-index: 4; left: 8px; top: 8px; max-width: calc(100% - 48px); min-height: 36px; padding: 5px 9px; border: 1px solid rgba(59, 47, 39, .16); border-radius: 999px; background: #fffaf1; color: #6c463b; box-shadow: 0 2px 8px rgba(35, 25, 20, .13); cursor: pointer; font: 600 11px 'DM Sans', sans-serif; }
.pin-manifest:hover { background: #f5e3d4; }
.pin-manifest:focus-visible { outline: 2px solid #a36552; outline-offset: 2px; }
.note-pin.manifestable-pin > p, .link-pin.manifestable-pin > p { padding-top: 31px; }
.app-toast { position: fixed; z-index: 200; right: 1rem; bottom: 1rem; max-width: min(350px, calc(100vw - 2rem)); padding: .9rem 1.1rem; border-radius: .7rem; background: #2d342e; color: #fffaf3; box-shadow: 0 9px 28px rgba(24, 22, 18, .2); font: 500 .85rem 'DM Sans', sans-serif; }

.moment-voice { display:grid; gap:9px; padding:18px; border:1px solid #fff3; border-radius:13px; background:#fff1; }
.moment-voice > span { color:#e8ba77; font:500 10px 'DM Mono',monospace; letter-spacing:.14em; }
.moment-voice p,.moment-voice small { margin:0; color:#dfd0d2; font-size:12px; line-height:1.45; }
.moment-voice > div { display:flex; flex-wrap:wrap; gap:8px; }
.moment-voice button { min-height:39px; padding:0 12px; border:1px solid #f5efe688; border-radius:999px; background:#fff2; color:#fff8f0; cursor:pointer; font:600 11px 'DM Sans',sans-serif; }
.moment-voice #stopMomentVoice { background:#e7ba79; border-color:#e7ba79; color:#281e32; }
.moment-voice audio { width:100%; height:36px; }
