[data-contact-entry] { font: inherit; font-size: 12px; color: inherit; background: none; border: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; padding: 10px 0; }
#contact-dialog { box-sizing: border-box; width: min(520px, calc(100% - 24px)); max-height: calc(100dvh - 24px); margin: auto; padding: 0; border: 1px solid #ddd; border-radius: 18px; background: #fbf9f4; color: #003345; overflow: auto; }
#contact-dialog::backdrop { background: rgb(0 0 0 / .55); }
.contact-content { padding: 20px; display: flex; flex-direction: column; gap: 12px; overflow-wrap: anywhere; }
.contact-content h2 { font-size: 20px; margin: 0; }
.contact-content p { font-size: 13px; margin: 0; }
.contact-content label { font-size: 14px; font-weight: 700; }
.contact-content input, .contact-content textarea { box-sizing: border-box; min-width: 0; width: 100%; padding: 10px; border: 1px solid #9aa4a8; border-radius: 8px; font: inherit; font-size: 16px; color: #003345; background: white; }
.contact-content textarea { resize: vertical; }
.contact-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.contact-actions button { min-height: 44px; padding: 10px 14px; border: 1px solid #9aa4a8; border-radius: 10px; font: inherit; font-size: 14px; white-space: normal; }
.contact-actions button:disabled { opacity: .65; }
#contact-close { background: #003345; color: white; cursor: pointer; }
#contact-dialog :focus-visible, [data-contact-entry]:focus-visible { outline: 3px solid #b9721c; outline-offset: 3px; }
