.letter-invitation{padding-top:3px;font-size:1.0625rem;line-height:2.1}.letter-invitation p{margin:0 0 1.5rem}.letter-link{display:inline-flex;align-items:center;gap:.65rem;color:var(--collection-accent);font-size:1rem;border-bottom:1px solid currentColor;padding:0 0 3px;text-decoration:none;background:none;cursor:pointer}.letter-invitation .letter-note{margin-top:2.5rem}.letter-note,.letter-back,.optional{color:hsl(var(--muted-foreground));font-size:.875rem;line-height:1.85}.letter-page{max-width:650px;margin:30px auto 0}.letter-back{display:inline-block;margin-bottom:32px}.letter-page h1{font-size:2.125rem;font-weight:400;letter-spacing:3px;margin:0 0 18px}.letter-intro{line-height:2;margin-bottom:20px}.preview-notice{font-size:.8125rem;color:hsl(var(--muted-foreground));margin:20px 0 30px;padding-left:12px;border-left:2px solid hsl(var(--border))}#letter-form fieldset{padding:0 0 30px;margin:0 0 30px;border:0;border-bottom:1px solid hsl(var(--border));min-width:0}#letter-form legend{font-size:1.125rem;margin-bottom:22px}#letter-form label:not(.letter-options label){display:block;font-size:.9375rem;margin:0 0 9px}#letter-form input:not([type=radio]):not([type=file]),#letter-form textarea{width:100%;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:5px;padding:11px 13px;color:inherit;font:inherit;line-height:1.8;box-sizing:border-box}#letter-form textarea{resize:vertical;min-height:210px}#letter-form input:focus-visible,#letter-form textarea:focus-visible,#letter-form button:focus-visible,.letter-page a:focus-visible{outline:2px solid var(--collection-accent);outline-offset:3px}#letter-form input::placeholder,#letter-form textarea::placeholder{color:hsl(var(--muted-foreground));opacity:.8}#letter-form .optional{margin-left:7px;font-weight:400}#letter-form [hidden],#letter-result[hidden]{display:none!important}.letter-modes{display:flex;gap:24px;margin:22px 0 15px;border-bottom:1px solid hsl(var(--border))}.letter-modes button{padding:0 0 10px;font:inherit;font-size:.9375rem;color:hsl(var(--muted-foreground));cursor:pointer;border-bottom:2px solid transparent}.letter-modes button[aria-pressed=true]{color:var(--collection-accent);border-bottom-color:currentColor}.letter-options{display:flex;gap:26px;margin:0 0 18px}.letter-options.vertical{flex-direction:column;gap:12px}.letter-options label{display:flex;gap:9px;align-items:center;font-size:.9375rem;cursor:pointer}.letter-options input{accent-color:var(--collection-accent);width:16px;height:16px;flex-shrink:0}.letter-note{margin-top:10px}#contact-label{margin-top:22px!important}.letter-send{display:flex;align-items:center;gap:18px;margin-bottom:30px}.send-button{background:var(--collection-accent);color:#fff;border-radius:5px;padding:11px 22px;font:inherit;cursor:pointer}.dark .send-button{color:#171416}.letter-send span{font-size:.8125rem;color:hsl(var(--muted-foreground))}#letter-result{padding:25px 0;line-height:2}#letter-result h2{font-size:1.5rem;margin-bottom:20px;font-weight:400}#letter-result p{margin-bottom:18px}#file-panel input{max-width:100%;font:inherit;font-size:.875rem}@media(max-width:640px){.letter-page{margin-top:18px}.letter-back{margin-bottom:24px}.letter-page h1{font-size:1.875rem}.letter-invitation{padding-top:0;font-size:1rem}.desktop-break{display:none}.letter-send{align-items:flex-start;flex-direction:column;gap:10px}.letter-options{gap:22px}}.guest-letter.collection{max-width:34rem;margin:clamp(2rem,7vh,5rem) auto 5rem}.guest-letter header{margin-bottom:clamp(1.75rem,4vw,2.75rem)}.guest-letter h1{font-size:clamp(1.85rem,4vw,2.35rem);font-weight:450;letter-spacing:.12em}.guest-letter .letter-invitation{max-width:29em;padding:0;line-height:1.95;text-wrap:pretty}.guest-letter .letter-invitation>p{margin:0 0 1em}.invitation-action{margin-top:2rem;padding-top:1.25rem;border-top:1px solid hsl(var(--border))}.invitation-action .letter-note{margin:.75rem 0 0}#letter-form[hidden],#letter-result[hidden]{display:none!important}#send-status{white-space:pre-wrap}.guest-letter .invite-link{margin-top:2rem;padding-top:1.25rem;border-top:1px solid hsl(var(--border))}
