/* The lead form dialog (talk.js): Talk to founder, Talk to the engineer. DESIGN.md tokens. */
html body .talk-dialog { width: min(480px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto; border: 1px solid #2E2E2E; border-radius: 8px; background: #141414; color: #E9EDF4; font-family: inherit; animation: talk-in 180ms cubic-bezier(0.32, 0.72, 0, 1); }
html body .talk-dialog::backdrop { background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
@keyframes talk-in { from { opacity: 0; transform: scale(0.97); } }
.talk-dialog .talk-body { padding: 32px; }
html body .talk-dialog h2 { margin: 0 0 8px; padding-right: 32px; font-size: 24px !important; line-height: 32px !important; font-weight: 600 !important; letter-spacing: 0 !important; color: #E9EDF4; }
.talk-dialog .talk-lead { margin: 0 0 24px; font-size: 14px; line-height: 20px; color: #858B94; }
.talk-dialog form { display: grid; gap: 16px; margin: 0; }
.talk-dialog label > span { display: block; margin-bottom: 6px; font-size: 12px; line-height: 16px; font-weight: 500; color: #E9EDF4; }
.talk-dialog :is(input, textarea) { display: block; width: 100%; margin: 0; padding: 9px 12px; border: 1px solid #2E2E2E; border-radius: 8px; background: #070707; color: #E9EDF4; font-family: inherit; font-size: 14px; line-height: 20px; font-weight: 400; outline: none; transition: border-color 150ms; }
.talk-dialog textarea { min-height: 96px; resize: vertical; }
.talk-dialog :is(input, textarea)::placeholder { color: #5F646D; opacity: 1; }
.talk-dialog :is(input, textarea):focus { border-color: rgba(255, 255, 255, 0.16); }
.talk-dialog input[aria-invalid="true"] { border-color: rgba(248, 113, 113, 0.5); }
.talk-dialog .talk-error { display: block; margin: 6px 0 0; font-style: normal; font-size: 12px; line-height: 16px; color: #F87171; }
.talk-dialog .talk-error[hidden] { display: none; }
.talk-dialog .talk-send-error { margin: 0; }
.talk-dialog .talk-trap { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
html body .talk-dialog .talk-submit { display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 40px; margin: 0; padding: 0 24px; border: 1px solid #10B981; border-radius: 8px; background: rgba(16, 185, 129, 0.5); color: #E9EDF4; font-family: inherit; font-size: 14px; line-height: 20px; font-weight: 600; cursor: pointer; transition: background-color 150ms; }
html body .talk-dialog .talk-submit:is(:hover, :active):not(:disabled) { background: #10B981; }
html body .talk-dialog .talk-submit:disabled { opacity: 0.6; cursor: default; }
html body .talk-dialog .talk-submit:focus-visible, .talk-dialog .talk-close:focus-visible { outline: 2px solid #10B981; outline-offset: 2px; }
.talk-dialog .talk-note { margin: 0; text-align: center; font-size: 12px; line-height: 16px; color: #5F646D; }
.talk-dialog .talk-note a { color: #858B94; text-decoration: underline; text-underline-offset: 2px; }
.talk-dialog .talk-note a:hover { color: #E9EDF4; }
html body .talk-dialog .talk-close { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; width: 32px; height: 32px; margin: 0; padding: 0; border: 0; border-radius: 8px; background: transparent; color: #5F646D; cursor: pointer; transition: color 150ms; }
html body .talk-dialog .talk-close:hover { color: #858B94; }
.talk-dialog .talk-done { padding-top: 8px; }
@media (max-width: 480px) { .talk-dialog .talk-body { padding: 24px; } }
@media (prefers-reduced-motion: reduce) { html body .talk-dialog { animation: none; } }
