.contact-dialog .contact-ai-notice{z-index:1;text-align:left;margin-bottom:1.25rem;position:sticky;top:0}.contact-dialog{z-index:200;--contact-goal:var(--color-fact);--contact-given:var(--contact-goal);--contact-intent:var(--contact-goal);--card-color:var(--contact-goal);--card-close-top:1.25rem;--card-close-right:1.25rem;position:fixed;inset:0}.contact-dialog .contact-backdrop{background:radial-gradient(circle at 53% 46%, color-mix(in srgb, var(--color-sky-raised) 8%, transparent), color-mix(in srgb, var(--color-shadow) 62%, transparent) 72%), color-mix(in srgb, var(--color-shadow) 36%, transparent);position:fixed;inset:0}.contact-dialog .contact-frame{overscroll-behavior:contain;overflow-y:auto}.contact-dialog .contact-surface{box-sizing:border-box;text-align:center;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--contact-goal) 28%, transparent) transparent;isolation:isolate;width:min(44rem,100%);max-height:calc(100dvh - 2rem);margin:0;padding:clamp(3.25rem,7vw,4rem) clamp(1.5rem,6vw,3.5rem) clamp(2rem,5vw,3rem);position:relative;overflow:hidden auto;container-type:inline-size}.contact-dialog .contact-header{display:block}.contact-dialog .contact-header :is(h2,h3){outline:none}.contact-dialog .contact-intro{max-width:none;color:var(--color-ink-soft);font:var(--text-base) / 1.6 var(--font-brand);text-wrap:balance;margin:.9rem 0 1.75rem}.contact-dialog .contact-form{gap:1.35rem;display:grid}.contact-dialog .contact-identity{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.contact-dialog .contact-field{min-width:0;position:relative}.contact-dialog .contact-field label{color:var(--color-ink-quiet);font:.75rem/1.4 var(--font-brand);letter-spacing:.095em;text-transform:uppercase;text-wrap:balance;justify-content:center;margin:0 0 .35rem;transition:color .16s;display:flex}.contact-dialog .contact-field:focus-within label{color:color-mix(in srgb, var(--contact-goal) 78%, white)}.contact-dialog .contact-field :is(input,textarea){text-align:left}.contact-dialog .contact-field-error{color:color-mix(in srgb, var(--color-danger) 80%, var(--color-ink-bright));font:.72rem/1.45 var(--font-brand);margin:.42rem 0 0}.contact-dialog .contact-draft-note{color:var(--color-ink-quiet);font:.72rem/1.45 var(--font-brand);margin:.42rem 0 0}.contact-dialog .contact-system-error{border:1px solid color-mix(in srgb, var(--color-danger) 40%, transparent);color:color-mix(in srgb, var(--color-danger) 60%, var(--color-ink-bright));background:color-mix(in srgb, var(--color-danger) 6%, transparent);font:.75rem/1.5 var(--font-brand);border-radius:1rem;justify-content:center;align-items:baseline;gap:.7rem;padding:.7rem .85rem;display:flex}.contact-dialog .contact-system-error span{color:var(--color-danger)}.contact-dialog .contact-system-error p{margin:0}.contact-dialog .contact-transmission{flex-direction:column;align-items:center;gap:1rem;margin-top:.75rem;display:flex}.contact-dialog .contact-privacy{max-width:44ch;color:var(--color-ink-quiet);font:.72rem/1.5 var(--font-brand);text-wrap:balance;margin:0}.contact-dialog .contact-success{align-content:center;place-items:center;gap:1.25rem;min-height:min(40vh,18rem);margin-top:1rem;display:grid}.contact-dialog .contact-goal-node{place-items:center;width:8.8rem;height:3.8rem;display:grid;position:relative}.contact-dialog .contact-goal-path{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--contact-goal) 30%, transparent) 30%, transparent 48% 52%, color-mix(in srgb, var(--contact-goal) 54%, transparent) 76%, transparent);height:1px;position:absolute;top:50%;left:0;right:0}.contact-dialog .contact-goal-diamond{background:var(--contact-goal);width:1rem;height:1rem;box-shadow:0 0 0 .38rem color-mix(in srgb, var(--contact-goal) 12%, transparent), 0 0 1.7rem color-mix(in srgb, var(--contact-goal) 58%, transparent);transform:rotate(45deg)}.contact-dialog .contact-success-copy{max-width:38ch;color:var(--color-ink-soft);font:var(--text-base) / 1.6 var(--font-brand);margin:0}@media (width<=720px){.contact-dialog .contact-frame{align-items:flex-start;padding:.75rem}.contact-dialog .contact-surface{width:100%;max-height:calc(100dvh - 1.5rem)}.contact-dialog .contact-identity{grid-template-columns:1fr;gap:1.25rem}.contact-dialog .contact-form{gap:1.2rem}.contact-dialog .contact-message textarea{min-height:6.4rem}}@media (prefers-reduced-motion:reduce){.contact-dialog .contact-field label{transition:none}}@media (forced-colors:active){.contact-dialog .contact-backdrop{background:canvas}.contact-dialog .contact-field input,.contact-dialog .contact-field textarea{color:canvastext;border-color:canvastext}}
