.chat-safety-dialog { width: min(38rem, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto; font: 16px/1.45 system-ui, sans-serif; color: var(--text, #e7edf4); background: #181f29; border: 1px solid #526277; border-radius: 14px; padding: 1.2rem; }
.chat-safety-dialog button, .chat-safety-dialog select { font: inherit; min-height: 44px; }
.chat-safety-dialog::backdrop { background: #080b10bd; }
.chat-safety-dialog [hidden] { display: none !important; }
.chat-safety-dialog header, .chat-safety-dialog .safety-actions, .chat-safety-dialog li { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.chat-safety-dialog header { display: grid; grid-template-columns: minmax(0, 1fr) auto 44px; }
.chat-safety-dialog .safety-close-icon { grid-column: 3; grid-row: 1; width: 44px; height: 44px; padding: 0; font-size: 1.6rem; line-height: 1; }
.chat-safety-dialog h2 { font-size: 1.25rem; margin: 0; }
.chat-safety-dialog h3 { font-size: 1rem; margin: 1.2rem 0 .6rem; }
.chat-safety-dialog p { line-height: 1.5; }
.chat-safety-dialog label { display: block; margin: .8rem 0 .3rem; }
.chat-safety-dialog textarea, .chat-safety-dialog input { box-sizing: border-box; width: 100%; font-size: 16px; }
.chat-safety-dialog textarea { min-height: 5rem; padding: .6rem; resize: vertical; color: inherit; background: #101720; border: 1px solid #526277; border-radius: 6px; }
.chat-safety-dialog ul { padding: 0; list-style: none; }
.chat-safety-dialog li { justify-content: space-between; margin: .4rem 0; }
.chat-safety-dialog .safety-actions { margin-top: .7rem; }
.chat-safety-dialog .safety-footer { flex-wrap: nowrap; align-items: stretch; }
.chat-safety-dialog .safety-footer .button { flex: 1 1 0; min-width: 0; padding: 10px 6px; white-space: normal; font-size: 14px; line-height: 1.3; }
#chat-safety-status { min-height: 1.5em; color: #f5c974; }
.chat-safety-dialog a { color: #8acfff; overflow-wrap: anywhere; }
.chat-safety-actions { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; min-width: 24px; min-height: 24px; padding: 0; border: 0; border-radius: 4px; background: transparent; color: var(--muted, #9ba8b8); font: 16px/1 system-ui, sans-serif; cursor: pointer; }
.chat-safety-actions:hover, .chat-safety-actions:focus-visible { background: #303d4d; color: #e7edf4; }
.presence-list .chat-safety-actions { flex: 0 0 auto; }
.log-message-body > .chat-safety-actions, .log-cw-body > .chat-safety-actions { grid-column: 2; grid-row: 1; justify-self: end; }
#chat-safety-open { white-space: normal; }
.topbar #chat-safety-open { display: none; }
@media (max-width: 520px) {
    .chat-safety-dialog { padding: .85rem; }
    .chat-safety-dialog header { grid-template-columns: minmax(0, 1fr) 44px; }
    #chat-safety-language { grid-column: 1; grid-row: 2; justify-self: start; }
    .chat-safety-dialog .safety-close-icon { grid-column: 2; align-self: start; }
}
