/* A brief, confirmed send-off. The page beneath is already ready to use. */
.send-celebration { position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 24px; border: 0; color: var(--ink); background: var(--soft); overflow: auto; overflow-x: hidden; }
.send-celebration:not([open]) { display: none; }
.send-celebration[open] { display: grid; place-items: center; animation: send-screen-in 350ms ease-out both; }
.send-celebration::backdrop { background: var(--soft); }
.send-celebration-stage { position: relative; width: min(620px, 100%); text-align: center; padding: 12px 0 30px; }
.send-celebration-art { position: relative; width: 100%; margin: -25px 0 -30px; color: var(--signature-line); }
.send-celebration-art svg { position: relative; display: block; width: 100%; overflow: visible; }
.send-particles { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.send-quill, .send-envelope { will-change: transform; }
.send-quill-activate { position: absolute; left: 53%; top: 44%; width: 27%; height: 60%; min-width: 74px; min-height: 84px; transform: translate(-50%, -50%); padding: 0; border: 0; border-radius: 24px; background: transparent; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.send-quill-activate:focus-visible { outline: 1px solid var(--signature-line); outline-offset: 6px; }
.send-quill-activate[aria-disabled="true"] { cursor: default; }
.send-celebration-copy { position: relative; animation: send-copy-in 450ms 180ms ease-out both; }
.send-celebration-eyebrow { display: block; margin-bottom: 14px; color: var(--muted); font-size: .61rem; letter-spacing: .2em; font-weight: 550; }
.send-celebration h2 { font-size: clamp(2.2rem, 5vw, 3.5rem); line-height: 1.1; letter-spacing: -.055em; font-weight: 500; margin: 0 0 17px; }
.send-celebration p { font-size: .9rem; margin: 0; }
.send-celebration-subject { display: block; max-width: 420px; margin: 20px auto 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .75rem; color: var(--muted); }
.send-celebration-dismiss { display: inline-flex; align-items: center; gap: 9px; padding: 10px 16px; min-height: 44px; margin-top: 30px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); color: var(--muted); font-size: .78rem; cursor: pointer; }
.send-celebration-dismiss:hover { color: var(--ink); border-color: var(--control-border); }
.send-celebration-dismiss:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.send-celebration-dismiss .ui-icon { width: 16px; height: 16px; }
.send-celebration.is-closing { animation: send-screen-out 650ms ease-in-out both; }
.send-celebration.is-closing::backdrop { animation: send-screen-out 650ms ease-in-out both; }
@keyframes send-screen-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes send-screen-out { to { opacity: 0; } }
@keyframes send-copy-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 600px) { .send-celebration { padding: 20px; } .send-celebration-art { margin: 0 0 -12px; } }
@media (prefers-reduced-motion: reduce) { .send-celebration, .send-celebration * { animation: none !important; } }
@media print { .send-celebration { display: none !important; } }
