/* Contact-only controls share the existing form palette and focus styles. */
.frm button:disabled{opacity:.6;cursor:wait}

/* Topic: radio group styled as editorial tags instead of a native select. */
.topic-field{margin:0;padding:0;border:0;min-width:0}
.topic-field legend{padding:0;margin-bottom:8px;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}
.topic-chips{display:flex;flex-wrap:wrap;gap:8px}
.frm .topic-chip{position:relative;display:inline-flex;font-size:15px;letter-spacing:0;text-transform:none;line-height:1.3;color:var(--milk);cursor:pointer}
.topic-chip input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.topic-chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--line);background:rgba(242,235,221,.04);transition:border-color .15s,background-color .15s,color .15s}
.topic-chip:hover span{border-color:var(--dim)}
.topic-chip input:checked+span{background:var(--ochre-deep);border-color:var(--ochre-deep);color:#fdf7ea}
.topic-chip input:focus-visible+span{outline:2px solid var(--ochre);outline-offset:2px}
html[lang="ru"] .topic-field legend{text-transform:none;letter-spacing:.015em;line-height:1.5}

/* Turnstile runs invisibly; it only takes space when Cloudflare asks for a check. */
.turnstile-slot{max-width:100%;margin-top:-16px}
.turnstile-slot.is-visible{margin-top:0}

/* One quiet line of reassurance under the button. */
.form-note a{color:inherit;text-underline-offset:3px}
.form-note a:hover{color:var(--milk)}
.form-note a{white-space:nowrap}
