:root{--joy-rose:#E8736A;--joy-coral:#F2A089;--joy-amber:#F6C667;--joy-honey:#E8B554;--joy-mint:#A4C9A4;--joy-lilac:#C2B0D8;--joy-sun:#FFD89B;--voices-grad-warm:linear-gradient(135deg,#F6C667,#E8736A 55%,#B28431);--voices-grad-soft:linear-gradient(135deg,#FFE9B8,#F8C5A8 55%,#F0E4C0);--voices-grad-sky:linear-gradient(135deg,#FFE9B8,#FFD89B 30%,#F2A089 65%,#E8736A);--voices-category-person-bg:linear-gradient(135deg,#F5E8E4,#FBE9E1);--voices-category-person-border:rgba(184,68,58,0.22);--voices-category-person-ink:#7A4F46;--voices-category-place-bg:linear-gradient(135deg,#F4EEDD,#FFE9B8);--voices-category-place-border:rgba(178,132,49,0.25);--voices-category-place-ink:#6B5836;--voices-category-date-bg:linear-gradient(135deg,#E8EDE2,#DEE3C8);--voices-category-date-border:rgba(112,128,96,0.28);--voices-category-date-ink:#4F5C3F;--voices-category-phrase-bg:linear-gradient(135deg,var(--gold-wash,#F5E4AF),#FFE9B8);--voices-category-phrase-border:rgba(178,132,49,0.32);--voices-category-phrase-ink:#8A5F1E;--voices-category-sense-bg:linear-gradient(135deg,#EDE6F2,#E8E0F2);--voices-category-sense-border:rgba(108,86,138,0.25);--voices-category-sense-ink:#5A4669;--voices-confetti-1:#E8B554;--voices-confetti-2:#E8736A;--voices-confetti-3:#A4C9A4;--voices-confetti-4:#C2B0D8;--voices-confetti-5:#FFD89B;--paper-ink:var(--ink);--rule-hair:var(--owner-border);--ease-out:cubic-bezier(0.22,1,0.36,1);--joy-grad-warm:var(--voices-grad-warm);--joy-grad-soft:var(--voices-grad-soft);--joy-grad-sky:var(--voices-grad-sky);--font-italic:"Cormorant Garamond",Georgia,serif;--muted:#736852;--muted-2:#B5A98F;--paper-2:#FBF2DA;--rule:#D9CDA8;--rule-soft:#E7DCBC;--gold-wash:#F5E4AF;--terra-wash:#F5DDD8;--shadow-sm:0 1px 0 rgba(28,24,19,.05),0 4px 12px rgba(28,24,19,.05);--elev-2:0 2px 0 rgba(28,24,19,.06),0 14px 32px rgba(28,24,19,.10);--elev-3:0 3px 0 rgba(28,24,19,.06),0 24px 56px rgba(28,24,19,.14);--paper-line:var(--rule-soft);--ink-faint:var(--ink-3,#7A6A60);--paper-warm:#FFF4D9;--paper-line-soft:#EFE2BD;--sage-wash:#DEE3C8;--shadow-paper:0 1px 0 rgba(138,95,30,.08),0 6px 18px -8px rgba(30,24,18,.22);--shadow-card-paper:0 1px 0 rgba(138,95,30,.10),0 18px 44px -22px rgba(30,24,18,.28);--pop-grad-welcome:linear-gradient(150deg,#FFF4D9,#F8E3D3 58%,#F3D8C8);--pop-grad-celebrate:linear-gradient(140deg,#FFE9B8,#F8C5A8 48%,#BBD3B0);--pop-grad-accent:linear-gradient(135deg,#C24A38,#B8443A 52%,#8A4A1E);--pop-shimmer:linear-gradient(90deg,#8A5F1E,#C24A38 38%,#A85A22 60%,#8A5F1E 95%);--pop-accent-glow:0 12px 30px -12px rgba(184,68,58,.55);--on-joy-coral:#5A2018;--on-joy-amber:#5A3F10;--on-joy-mint:#2C402C;--on-joy-lilac:#3A2E4D}@keyframes voices-confetti-float{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(8px,-10px) rotate(8deg)}66%{transform:translate(-6px,6px) rotate(-6deg)}}@keyframes voices-spark-twinkle{0%,to{transform:scale(1) rotate(0deg);opacity:1}50%{transform:scale(1.3) rotate(20deg);opacity:.7}}@keyframes voices-shimmer{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes pop-shimmer{to{background-position:200%}}@keyframes pop-breathe{0%,to{box-shadow:0 8px 22px -8px rgba(184,68,58,.5)}50%{box-shadow:0 12px 34px -6px rgba(184,68,58,.82)}}@keyframes pop-twinkle{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@keyframes pop-floaty{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(7px,-9px) rotate(7deg)}66%{transform:translate(-5px,6px) rotate(-6deg)}}@keyframes pop-livedot{0%,to{opacity:1}50%{opacity:.35}}.pop-shimmer-text{background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:pop-shimmer 6s linear infinite}.pop-breathe{animation:pop-breathe 3.4s var(--ease-out) infinite}.pop-twinkle{animation:pop-twinkle 2.4s var(--ease-out) infinite;display:inline-block}.pop-floaty{animation:pop-floaty 7.5s var(--ease-out) infinite}.pop-livedot{animation:pop-livedot 1.6s var(--ease-out) infinite}@media (prefers-reduced-motion:reduce){.pop-breathe,.pop-floaty,.pop-livedot,.pop-shimmer-text,.pop-twinkle{animation:none!important}}.state-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;background:var(--paper);border-bottom:1px solid var(--rule-soft)}.state-header,.state-header:before{transition:background .25s var(--ease-out)}.state-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:transparent}.state-header .label{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.state-header .label .dot{width:9px;height:9px;border-radius:50%;background:var(--muted-2)}.state-header .subtitle{margin-left:14px;font-family:var(--font-italic);font-style:italic;font-size:14px;letter-spacing:0;text-transform:none;color:var(--muted);font-weight:400}.state-header.dirty{background:var(--gold-wash)}.state-header.dirty:before{background:var(--gold-bright)}.state-header.dirty .label{color:var(--gold-deep)}.state-header.dirty .label .dot{background:var(--gold-bright);box-shadow:0 0 0 3px rgba(224,179,78,.18)}.state-header.dirty .subtitle{color:var(--gold-deep)}.state-header.saving{background:var(--gold-wash)}.state-header.saving:before{background:var(--gold-bright)}.state-header.saving .label{color:var(--ink-soft)}.state-header.saving .label .dot{background:var(--gold-bright);animation:atelier-pulse 1.4s ease-in-out infinite}.state-header.saved{background:var(--sage-wash)}.state-header.saved:before{background:var(--sage)}.state-header.saved .label{color:#4a5e3d}.state-header.saved .label .dot{background:var(--sage)}.state-header.saved .subtitle{color:#4a5e3d;font-weight:500}.state-header.conflicted{background:var(--terra-wash)}.state-header.conflicted:before{background:var(--terra-bright)}.state-header.conflicted .label{color:var(--terra)}.state-header.conflicted .label .dot{background:var(--terra-bright);animation:atelier-pulse 1.6s ease-in-out infinite}@keyframes atelier-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.audio-card{background:linear-gradient(135deg,var(--paper-2) 0,var(--gold-wash) 180%);border:1px solid rgba(178,132,49,.22);border-radius:14px;padding:16px 20px;display:flex;flex-direction:column;gap:10px}.audio-card.terra-source{background:linear-gradient(135deg,var(--paper-2),var(--gold-wash) 220%)}.audio-row{display:flex;align-items:center;gap:14px}.audio-play{width:48px;height:48px;border-radius:50%;background:var(--gold-bright);border:none;color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-gold);flex-shrink:0;transition:transform .12s var(--ease-out),box-shadow .12s var(--ease-out)}.audio-play:hover{transform:translateY(-1px);box-shadow:var(--shadow-gold-hover)}.audio-play svg{width:17px;height:17px}.audio-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.audio-source{font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);display:inline-flex;align-items:center;gap:6px}.audio-source.own{color:var(--sage)}.audio-source .glyph-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.6}.audio-title{font-family:var(--font-italic);font-style:italic;font-size:16px;color:var(--ink);line-height:1.35}.audio-progress{height:4px;border-radius:2px;background:var(--rule-soft);position:relative;overflow:hidden}.audio-progress-fill{position:absolute;inset:0 auto 0 0;background:var(--gold-bright);border-radius:2px}.audio-progress-fill.terra{background:var(--terra-bright)}.audio-time{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;color:var(--muted);letter-spacing:.04em;flex-shrink:0;font-variant-numeric:tabular-nums}.now-playing{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.now-playing .dot{width:6px;height:6px;border-radius:50%;background:var(--gold-bright)}.now-playing.own .dot{background:var(--sage)}.moment-editor{width:100%;min-height:240px;background:var(--paper);border:1px solid rgba(178,132,49,.22);border-radius:14px;padding:24px 28px;font-family:var(--font-body);font-size:var(--text-editor);line-height:1.65;color:var(--ink);resize:vertical;outline:none;box-shadow:var(--shadow-paper);transition:border-color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.moment-editor:focus{border-color:var(--gold-bright);box-shadow:var(--shadow-card-paper),0 0 0 4px rgba(224,179,78,.12)}.moment-editor::-moz-placeholder{color:var(--muted-2);font-style:italic}.moment-editor::placeholder{color:var(--muted-2);font-style:italic}.editor-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-family:var(--font-body);font-size:14px;color:var(--muted)}.editor-foot em{font-family:var(--font-italic);font-style:italic;color:var(--ink-soft)}.pin-btn{background:var(--paper);border:1px solid var(--rule-soft);border-radius:999px;padding:5px 12px 5px 10px;font-family:var(--font-body);font-size:13px;color:var(--ink-soft);display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:all .15s var(--ease-out)}.pin-btn:hover{color:var(--gold-deep);border-color:rgba(178,132,49,.35);background:var(--paper-2)}.pin-btn.pinned{background:var(--gold-wash);color:var(--gold-deep);font-weight:500;border-color:rgba(178,132,49,.42);box-shadow:0 0 0 2px rgba(224,179,78,.12)}.pin-btn.pinned:hover{background:var(--gold-wash);border-color:var(--gold-bright)}.pin-btn.excluded{color:var(--terra);background:var(--paper);border-color:rgba(184,68,58,.28)}.pin-btn.excluded:hover{border-color:rgba(184,68,58,.45);background:rgba(184,68,58,.04)}.pin-btn.excluded .pin-glyph{opacity:.5}.pin-glyph{font-family:var(--font-display);font-size:14px;line-height:1}.events-footer{display:flex;flex-direction:column;gap:8px}.events-footer-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:2px}.events-footer-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}.event-card{display:flex;align-items:center;gap:14px;padding:10px 14px;background:var(--paper);border:1px solid rgba(178,132,49,.22);border-radius:12px;text-decoration:none;color:inherit;transition:transform .15s var(--ease-out),border-color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.event-card:hover{transform:translateY(-1px);border-color:rgba(178,132,49,.45);box-shadow:var(--shadow-card-hover)}.event-card-thumb{width:56px;height:56px;border-radius:10px;background:var(--cream2);background-size:cover;background-position:50%;flex-shrink:0;position:relative;overflow:hidden}.event-card-thumb.no-photo{display:grid;place-items:center;background:var(--gold-wash);color:var(--gold-deep);font-family:var(--font-display);font-size:22px;line-height:1}.event-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.event-card-title{font-family:var(--font-display);font-size:16px;font-weight:500;color:var(--ink);line-height:1.25}.event-card-meta,.event-card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-card-meta{font-family:var(--font-italic);font-style:italic;font-size:13px;color:var(--muted);line-height:1.3}.link-mod{background:transparent;border:none;cursor:pointer;font-family:var(--font-body);font-size:13px;color:var(--gold-deep);padding:2px 0;letter-spacing:.02em;font-weight:500}.link-mod:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.replace-row{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;padding:14px 2px 0}.replace-label{display:flex;flex-direction:column;gap:4px}.replace-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.replace-tile{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--paper);border:1px solid var(--rule-soft);border-radius:10px;cursor:pointer;text-align:left;transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out),border-color .18s var(--ease-out)}.replace-tile:hover{transform:translateY(-1px);box-shadow:var(--shadow-card-hover);border-color:rgba(178,132,49,.35)}.replace-tile.terra:hover{border-color:rgba(184,68,58,.35)}.rt-glyph{width:34px;height:34px;flex-shrink:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(224,179,78,.14);color:var(--gold-deep);border:1px solid rgba(178,132,49,.22)}.rt-glyph.terra{background:rgba(184,68,58,.1);color:var(--terra);border-color:rgba(184,68,58,.28)}.rt-mic{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(184,68,58,.15)}.rt-stack{display:flex;flex-direction:column;gap:2px}.rt-title{font-family:var(--font-body);font-size:13.5px;color:var(--ink);font-weight:500}.rt-sub{font-family:var(--font-italic);font-style:italic;font-size:11.5px;color:var(--muted)}.rt-sub em{font-family:inherit;font-style:inherit}.modal-veil{position:fixed;inset:0;background:rgba(28,24,19,.42);display:grid;place-items:center;z-index:100;animation:atelier-fade-in .18s var(--ease-out) both}@keyframes atelier-fade-in{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--paper);border:1px solid var(--rule-soft);border-radius:18px;box-shadow:var(--elev-3);width:520px;max-width:calc(100vw - 40px);padding:26px 28px;display:flex;flex-direction:column;gap:16px;animation:atelier-rise .24s var(--ease-out) both}@keyframes atelier-rise{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.modal-title{font-family:var(--font-display);font-size:26px;line-height:1.15;color:var(--ink);margin:0;font-weight:500;letter-spacing:-.01em}.modal-title em{font-family:var(--font-italic);font-style:italic;color:var(--gold-deep)}.modal-body p{font-family:var(--font-body);font-size:15.5px;line-height:1.55;color:var(--ink-soft)}.modal-cost{display:flex;align-items:baseline;justify-content:space-between;padding:14px 16px;background:var(--paper-2);border:1px solid var(--rule-soft);border-radius:12px}.modal-row{display:flex;justify-content:flex-end;gap:10px;align-items:center}.recorder-card{background:var(--paper);border:1px solid rgba(184,68,58,.22);border-radius:14px;padding:18px 22px;display:flex;flex-direction:column;gap:14px}.dz-mod{border:2px dashed var(--rule);border-radius:14px;padding:26px;text-align:center;background:var(--paper-2);cursor:pointer;transition:border-color .15s var(--ease-out),background .15s var(--ease-out)}.dz-mod.over,.dz-mod:hover{border-color:var(--gold-bright);background:var(--gold-wash)}.source-tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}.source-tag .dot{width:4px;height:4px;border-radius:50%;background:var(--gold-bright)}.mira-strip{display:flex;align-items:flex-start;gap:10px;color:var(--ink-soft);font-family:var(--font-italic);font-style:italic;font-size:var(--text-body-sm);margin-bottom:18px}