/* Communication controls share the existing dusk surfaces and outlined pills. */
.mention{display:inline;border:1px solid rgba(255,176,200,.36);background:rgba(255,176,200,.09);color:var(--accent);border-radius:999px;padding:0 .4em;font:inherit;line-height:inherit;cursor:pointer;white-space:nowrap}
.mention:hover,.mention:focus-visible{background:rgba(255,176,200,.18);outline:1px solid var(--accent)}
.mention-picker{position:fixed;z-index:1600;width:280px;max-height:220px;overflow-y:auto;background:rgba(28,23,47,.68);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--line);border-radius:16px;padding:6px;opacity:0;transform:translateY(4px);transition:opacity .16s,transform .16s;color:var(--ink)}
.mention-picker.is-open{opacity:1;transform:none}.mention-picker[hidden]{display:none}.mention-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-radius:10px;cursor:pointer}.mention-option small{font-size:11px;color:var(--ink-soft)}.mention-option[aria-selected=true]{background:rgba(255,176,200,.14);color:var(--accent)}
.communication-dialog{position:fixed;inset:0;margin:auto;width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:auto;padding:28px;color:var(--ink);background:rgba(31,26,49,.84);backdrop-filter:blur(22px);border:1px solid var(--line);border-radius:22px;animation:communication-in .2s ease}.communication-dialog.is-closing{animation:communication-out .2s ease forwards}.communication-dialog::backdrop{background:rgba(10,8,21,.45);backdrop-filter:blur(3px)}.communication-dialog h2{padding-right:32px;margin:0 0 18px;font-size:22px}.communication-close{position:absolute;right:14px;top:14px;width:32px;height:32px;padding:0;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:50%;font:24px/1 sans-serif;display:grid;place-items:center}.communication-dialog form{display:grid;gap:16px}.communication-dialog label{display:grid;gap:7px}.communication-dialog input,.communication-dialog textarea,.my-words input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;padding:10px 12px;color:var(--ink);background:rgba(255,255,255,.04);font:inherit}.communication-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.communication-status{color:var(--accent);font-size:13px}.message-edited{font-size:10px;color:var(--ink-soft);white-space:nowrap}.blocked-user-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.communication-settings h3:not(:first-child){margin-top:24px}.my-words{margin-top:24px;padding:20px}.my-words-list{display:grid;gap:12px;max-height:55dvh;overflow:auto}.saved-word{padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}.saved-word-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.saved-word-head>.btng{margin-left:auto}.word-saved-title{background:none;border:0;color:var(--accent);font:inherit;font-size:19px;cursor:pointer}.saved-word p{margin:8px 0;font-size:14px}.saved-word-source{font-size:12px}.edit-history-item{border-top:1px solid var(--line);padding:12px 0}.edit-history-item blockquote{white-space:pre-wrap;overflow-wrap:anywhere}.communication-settings .toggle-row p{font-size:14px}.communication-settings .switch{flex:none}.communication-countdown{font-size:12px;color:var(--accent);margin:4px 12px}.rpt-block-control{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;color:var(--ink)}
.mention-picker,.my-words-list,.communication-dialog{scrollbar-width:thin;scrollbar-color:rgba(255,176,200,.32) transparent}.communication-dialog::-webkit-scrollbar,.mention-picker::-webkit-scrollbar,.my-words-list::-webkit-scrollbar{width:5px}.communication-dialog::-webkit-scrollbar-thumb,.mention-picker::-webkit-scrollbar-thumb,.my-words-list::-webkit-scrollbar-thumb{background:rgba(255,176,200,.32);border-radius:8px}
@keyframes communication-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes communication-out{to{opacity:0;transform:translateY(6px)}}
@media(max-width:760px){.communication-dialog{padding:22px 18px}.my-words{padding:14px}.saved-word-head{gap:6px}.word-popup-actions{flex-wrap:wrap}.communication-settings .toggle-row{gap:16px}}
@media(prefers-reduced-motion:reduce){.communication-dialog,.communication-dialog.is-closing{animation:none}.mention-picker{transition:none}}

/* Each preference has its own touch target and enough space for the switch. */
#communicationSettings .toggle-row{min-height:44px;gap:18px;padding:6px 0;box-sizing:border-box}
#communicationSettings .toggle-row p{flex:1;min-width:0;line-height:1.5}
#communicationSettings .toggle-row .switch{width:48px;height:26px;min-width:48px;padding:0;margin:0;align-self:center}

/* Override generic correction button padding so the close icon stays centered. */
.correction-dialog.communication-dialog>.communication-close{display:grid;place-items:center;box-sizing:border-box;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;margin:0;line-height:1;font:24px/1 var(--font-ui);letter-spacing:0;text-indent:0;border-radius:50%;background:transparent}
