body.ra-assistance-open { overflow: hidden; }
.ra-assistance-modal { position: fixed; inset: 0; z-index: 10050; display: grid; place-items: center; padding: 20px; }
.ra-assistance-modal[hidden] { display: none; }
.ra-assistance-backdrop { position: absolute; inset: 0; background: rgba(28, 22, 30, .46); }
.ra-assistance-dialog { position: relative; width: min(100%, 520px); max-height: calc(100vh - 40px); overflow: auto; padding: 28px; border: 1px solid #f0d6ca; border-radius: 10px; background: #fff; color: var(--graphite, #25192a); box-shadow: 0 24px 64px rgba(0, 0, 0, .28); }
.ra-assistance-dialog h2 { margin: 0 32px 8px 0; font-family: var(--font-heading, sans-serif); font-size: 26px; }
.ra-assistance-dialog > p { margin: 0 0 20px; color: #665d68; line-height: 1.5; }
.ra-assistance-close { position: absolute; top: 12px; right: 14px; width: 34px; height: 34px; border: 0; background: transparent; color: var(--graphite, #25192a); font-size: 30px; line-height: 1; cursor: pointer; }
.ra-assistance-dialog form { display: grid; gap: 14px; }
.ra-assistance-dialog label { display: grid; gap: 7px; color: var(--graphite, #25192a); font-size: 14px; font-weight: 600; }
.ra-assistance-dialog input, .ra-assistance-dialog textarea { width: 100%; box-sizing: border-box; border: 1px solid #d9d2db; border-radius: 6px; padding: 10px 12px; background: #fff; color: var(--graphite, #25192a); font: inherit; font-weight: 400; }
.ra-assistance-dialog input:focus, .ra-assistance-dialog textarea:focus { outline: 2px solid rgba(255, 107, 53, .35); border-color: var(--persimmon, #ff6b35); }
.ra-assistance-dialog textarea { resize: vertical; min-height: 120px; }
.ra-assistance-dialog .ra-btn-primary { justify-self: start; }
.ra-assistance-status { min-height: 1.4em; margin: 0; color: #665d68; font-size: 14px; }
.ra-assistance-status.is-success { color: #237a43; }
.ra-assistance-status.is-error { color: #c43d26; }
@media (max-width: 520px) { .ra-assistance-modal { padding: 12px; } .ra-assistance-dialog { padding: 22px 18px; } }
