/* Voice Channel Chat uses the same message/composer language as normal Rift text channels. */
.rvc-chat{min-width:0;min-height:0;border-left:1px solid #24272e;background:#111318;color:#f2f3f5;display:grid;overflow:hidden}
.rvc-chat[data-rvc-parity]{grid-template-rows:52px minmax(0,1fr) auto auto 20px auto!important;background:#111318!important}
.rvc-parity-header{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 14px;border-bottom:1px solid #24272e;background:#111318}
.rvc-parity-header>div{display:flex;align-items:center;gap:8px;min-width:0}.rvc-parity-header>div>span{color:#808792;font-size:21px}.rvc-parity-header>div>div{display:flex;flex-direction:column;min-width:0}.rvc-parity-header strong{font-size:14px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rvc-parity-header small{font-size:9px;color:#747b86;margin-top:2px}.rvc-parity-header>button{width:32px;height:32px;border:0;border-radius:7px;background:transparent;color:#9ca2ac;display:grid;place-items:center;cursor:pointer}.rvc-parity-header>button:hover{background:#20232a;color:#fff}.rvc-parity-header svg{width:18px;height:18px}

/* VC message geometry is owned here. The entire content column is one block/flex
   stack so meta, body, attachments and reactions share the same left edge. */
.rvc-parity-message-list{min-height:0!important;overflow-y:auto!important;padding:10px 0 8px!important;background:#111318!important;scroll-behavior:auto!important}
.rvc-parity-message-list>.channel-intro{padding:18px 14px 10px!important}.rvc-parity-message-list>.channel-intro .channel-intro-icon{width:42px;height:42px;font-size:25px}.rvc-parity-message-list>.channel-intro h2{font-size:17px;margin:9px 0 4px}.rvc-parity-message-list>.channel-intro p{font-size:11px;color:#8b929d}
.rvc-parity-message-list>.message{position:relative!important;display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;column-gap:10px!important;row-gap:0!important;width:100%!important;padding:3px 12px 2px!important;margin:0!important;min-height:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important;align-items:start!important;font-family:inherit!important}
.rvc-parity-message-list>.message:has(+ .message.rift-message-continuation){padding-bottom:0!important}
.rvc-parity-message-list>.message:hover,.rvc-parity-message-list>.message:focus-within{background:#16191e!important}
.rvc-parity-message-list>.message>.avatar{width:40px!important;height:40px!important;min-width:40px!important;border-radius:50%!important;display:grid!important;place-items:center!important;font-size:12px!important;font-weight:700!important;cursor:pointer!important;margin:0!important}
.rvc-parity-message-list .message-content{grid-column:2!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;min-width:0!important;margin:0!important;padding:0!important;font-family:inherit!important}
.rvc-parity-message-list .message-meta{display:flex!important;align-items:baseline!important;gap:6px!important;min-width:0!important;min-height:18px!important;margin:0!important;padding:0!important;line-height:18px!important}
.rvc-parity-message-list .message-author{font-family:inherit!important;font-size:14px!important;line-height:18px!important;font-weight:600!important;color:#f1f2f4!important}
.rvc-parity-message-list .message-time,.rvc-parity-message-list .rvc-edited{font-family:inherit!important;font-size:11px!important;line-height:18px!important;font-weight:400!important;color:#737a85!important}
.rvc-parity-message-list .message-text{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;text-align:start!important;color:var(--text-soft,#c8ccd2)!important;font-family:inherit!important;font-size:15px!important;font-weight:400!important;font-style:normal!important;letter-spacing:normal!important;line-height:20px!important;white-space:pre-wrap!important;word-break:break-word!important;overflow-wrap:anywhere!important;user-select:text!important;-webkit-user-select:text!important}
.rvc-parity-message-list .reply-preview{font-size:10px!important;line-height:1.3!important;margin:0 0 3px!important;padding-left:7px!important;border-left:2px solid #555c67!important;color:#9299a4!important}.rvc-parity-message-list .reply-preview strong{margin-right:5px;color:#c9cdd2!important}
.rvc-parity-message-list .message-attachments{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:5px}.rvc-parity-message-list .message-image{max-width:min(100%,290px)!important;max-height:260px!important;border-radius:6px!important;object-fit:contain!important;background:#090a0d}.rvc-parity-message-list .file-attachment{max-width:100%;min-width:0;display:grid!important;grid-template-columns:24px minmax(0,1fr) auto!important;gap:7px!important;align-items:center!important;padding:7px 8px!important;border:1px solid #30343b!important;border-radius:6px!important;background:#171a20!important;color:#d9dce1!important;text-decoration:none!important}.rvc-parity-message-list .file-attachment strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rvc-parity-message-list .file-attachment small{font-size:9px;color:#7f8791}
.rvc-parity-message-list .reaction-strip{display:flex!important;flex-wrap:wrap!important;gap:4px!important;margin-top:4px!important}.rvc-parity-message-list .reaction-chip{min-height:24px!important;padding:2px 6px!important;border:1px solid #30343b!important;border-radius:6px!important;background:#1b1e24!important;color:#d8dbe0!important;font-size:11px!important;cursor:pointer!important}.rvc-parity-message-list .reaction-chip:hover,.rvc-parity-message-list .reaction-chip.mine{border-color:var(--accent,#d84b4b)!important;background:color-mix(in srgb,var(--accent,#d84b4b),transparent 88%)!important}
.rvc-parity-message-list .message-actions{display:none!important}

/* Same-author continuations collapse the avatar out of layout while retaining
   column 1 as the timestamp gutter. */
.rvc-parity-message-list>.message.rift-message-continuation{grid-template-columns:40px minmax(0,1fr)!important;column-gap:10px!important;row-gap:0!important;padding:0 12px!important;min-height:20px!important;margin:0!important}
.rvc-parity-message-list>.message.rift-message-continuation>.avatar{display:none!important;pointer-events:none!important}
.rvc-parity-message-list>.message.rift-message-continuation>.message-content{grid-column:2!important;display:flex!important;margin:0!important;padding:0!important}
.rvc-parity-message-list>.message.rift-message-continuation .message-meta{display:none!important}
.rvc-parity-message-list>.message.rift-message-continuation .message-text{margin:0!important;padding:0!important;line-height:20px!important}
.rvc-parity-message-list>.message.rift-message-continuation::before{content:attr(data-rift-continuation-time);grid-column:1;grid-row:1;align-self:center;justify-self:end;padding-right:2px;color:#6f7680;font-size:9px;line-height:1;opacity:0;pointer-events:none;white-space:nowrap}
.rvc-parity-message-list>.message.rift-message-continuation:hover::before,.rvc-parity-message-list>.message.rift-message-continuation:focus-within::before{opacity:1}

/* Keep the normal hover toolbar usable while crossing the gap into it. */
.rvc-parity-message-list .ui0213-message-toolbar{pointer-events:auto!important;z-index:80!important;right:8px!important;top:-14px!important;transform:none!important;max-width:calc(100% - 18px)!important}
.rvc-parity-message-list>.message:hover .ui0213-message-toolbar,.rvc-parity-message-list>.message:focus-within .ui0213-message-toolbar,.rvc-parity-message-list .ui0213-message-toolbar:hover{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.rvc-parity-message-list .ui0213-message-toolbar button{width:30px!important;height:30px!important;min-width:30px!important}.rvc-parity-message-list .ui0213-message-toolbar .emoji{font-size:15px!important}
.rvc-parity-menu{z-index:4200!important}

.rvc-parity-reply{margin:0 10px!important;border-radius:7px 7px 0 0!important;background:#181b21!important;border:1px solid #2a2e35!important;border-bottom:0!important;min-height:44px!important;padding:7px 8px 7px 10px!important}.rvc-parity-reply.hidden{display:none!important}.rvc-parity-reply>div{min-width:0}.rvc-parity-reply span{font-size:9px;color:#8d949e}.rvc-parity-reply strong{font-size:10px;color:#d9dce0}.rvc-parity-reply p{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0 0!important;color:#8d949e!important}.rvc-parity-reply button{width:28px!important;height:28px!important}
.rvc-parity-files{margin:0 10px!important;padding:7px!important;border:1px solid #2a2e35!important;border-bottom:0!important;background:#181b21!important;display:flex!important;flex-direction:column!important;gap:4px!important}.rvc-parity-files.hidden{display:none!important}.rvc-parity-files .pending-file{display:grid!important;grid-template-columns:minmax(0,1fr) auto 24px!important;gap:6px!important;align-items:center!important;min-height:30px!important;padding:4px 6px!important;border-radius:5px!important;background:#20232a!important}.rvc-parity-files .pending-file strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rvc-parity-files .pending-file small{font-size:9px;color:#858c96}.rvc-parity-files .pending-file button{border:0;background:transparent;color:#9ba1aa;cursor:pointer}
.rvc-parity-typing{height:20px!important;min-height:20px!important;padding:2px 13px 0!important;background:#111318!important;color:#8d949e!important;font-size:9px!important}

/* Enter-to-send VC composer. Normal channel/DM composers are unaffected. */
.rvc-parity-composer{position:relative!important;margin:0 10px 10px!important;width:auto!important;min-height:44px!important;padding:5px 7px!important;display:grid!important;grid-template-columns:32px minmax(0,1fr) auto!important;gap:4px!important;align-items:end!important;border:0!important;border-radius:8px!important;background:#1b1e24!important;box-shadow:none!important}
.rvc-parity-composer textarea{min-width:0!important;min-height:32px!important;max-height:120px!important;margin:0!important;padding:6px 6px!important;border:0!important;outline:0!important;resize:none!important;background:transparent!important;color:#eef0f3!important;font-family:inherit!important;font-size:15px!important;line-height:20px!important}.rvc-parity-composer textarea::placeholder{color:#747b86!important}
.rvc-parity-composer .composer-action,.rvc-parity-tools button{width:30px!important;height:30px!important;min-width:30px!important;border:0!important;border-radius:7px!important;display:grid!important;place-items:center!important;background:transparent!important;color:#a7adb6!important;cursor:pointer!important}.rvc-parity-composer .composer-action:hover,.rvc-parity-tools button:hover{background:#292d34!important;color:#fff!important}
.rvc-parity-composer .send-button{display:none!important}
.rvc-parity-composer svg{width:18px;height:18px}.rvc-parity-tools{display:flex;align-items:center;align-self:center}

/* Legacy non-parity VC chat fallback, retained here so voice-view.css owns no chat geometry. */
.rvc-chat>header{display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 16px;border-bottom:1px solid #24272e}.rvc-chat>header>div{display:flex;align-items:center;gap:7px;min-width:0}.rvc-chat>header>div>span{font-size:21px;color:#7f8792}.rvc-chat>header strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rvc-chat>header button{width:32px;height:32px;border:0;background:transparent;color:#9ba1aa;border-radius:7px;display:grid;place-items:center;cursor:pointer}.rvc-chat>header button:hover{background:#20232a;color:#fff}.rvc-chat>header svg{width:18px;height:18px}
.rvc-chat-messages{min-height:0;overflow-y:auto;padding:14px 10px 14px 14px}.rvc-chat-message{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;padding:7px 4px;border-radius:6px}.rvc-chat-message:hover{background:#16191e}.rvc-chat-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff}.rvc-chat-copy{min-width:0}.rvc-chat-copy>div:first-child{display:flex;align-items:baseline;gap:7px}.rvc-chat-copy strong{font-size:13px}.rvc-chat-copy time{font-size:10px;color:#737a85}.rvc-chat-copy p{margin:2px 0 0;color:#d4d7dc;font-size:13px;line-height:1.38;overflow-wrap:anywhere}.rvc-chat-image{display:block;max-width:100%;max-height:220px;border-radius:7px;margin-top:6px}.rvc-chat-file{display:inline-flex;margin-top:6px;color:#59a8ff;font-size:12px}.rvc-chat-empty,.rvc-chat-loading{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7e858f;gap:5px;padding:30px}.rvc-chat-empty strong{font-size:14px;color:#dadddf}.rvc-chat-empty span,.rvc-chat-loading{font-size:12px}.rvc-chat-typing{height:22px;padding:1px 15px;color:#8c939d;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rvc-chat-composer{margin:0 12px 12px;padding:6px 7px;background:#1b1e24;border-radius:9px;display:grid;grid-template-columns:30px minmax(0,1fr) 30px;align-items:end;gap:4px}.rvc-chat-composer textarea{min-height:30px;max-height:120px;resize:none;border:0;background:transparent;color:#eef0f3;outline:none;padding:6px 4px;line-height:1.35}.rvc-chat-composer textarea::placeholder{color:#747b86}.rvc-chat-plus,.rvc-chat-send{width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:#a3a9b2;display:grid;place-items:center;cursor:pointer}.rvc-chat-plus:hover,.rvc-chat-send:hover{background:#292d34;color:#fff}.rvc-chat-send{color:var(--accent,#d84b4b);font-size:18px}

@media(max-width:980px){.rift-voice-chat-open .rvc-layout{grid-template-columns:minmax(0,1fr) minmax(290px,340px)!important}.rvc-parity-message-list .ui0213-message-toolbar .emoji:nth-of-type(-n+2){display:none!important}}
@media(max-width:760px){.rvc-chat{border-left:0}.rvc-parity-message-list>.message{padding-left:10px!important;padding-right:8px!important}.rvc-parity-message-list>.message.rift-message-continuation{padding-left:10px!important;padding-right:8px!important}}

html[data-rift-effective-theme='light'] .rvc-chat,html[data-rift-effective-theme='light'] .rvc-chat[data-rvc-parity],html[data-rift-effective-theme='light'] .rvc-parity-header,html[data-rift-effective-theme='light'] .rvc-parity-message-list,html[data-rift-effective-theme='light'] .rvc-parity-typing{background:#f7f8fa!important;color:#171b21!important}
html[data-rift-effective-theme='light'] .rvc-chat{border-color:#cfd4da!important}html[data-rift-effective-theme='light'] .rvc-chat>header,html[data-rift-effective-theme='light'] .rvc-parity-header{border-color:#d4d9df!important}html[data-rift-effective-theme='light'] .rvc-parity-header strong,html[data-rift-effective-theme='light'] .rvc-parity-message-list .message-author{color:#20262d!important}html[data-rift-effective-theme='light'] .rvc-parity-message-list>.message:hover,html[data-rift-effective-theme='light'] .rvc-parity-message-list>.message:focus-within,html[data-rift-effective-theme='light'] .rvc-chat-message:hover{background:#e9edf1!important}html[data-rift-effective-theme='light'] .rvc-parity-message-list .message-text,html[data-rift-effective-theme='light'] .rvc-chat-copy p{color:#343b44!important}html[data-rift-effective-theme='light'] .rvc-parity-composer,html[data-rift-effective-theme='light'] .rvc-parity-reply,html[data-rift-effective-theme='light'] .rvc-parity-files{background:#fff!important;border-color:#cbd1d8!important}html[data-rift-effective-theme='light'] .rvc-parity-composer textarea,html[data-rift-effective-theme='light'] .rvc-chat-composer textarea{color:#20262d!important}html[data-rift-effective-theme='light'] .rvc-parity-files .pending-file{background:#eef1f4!important}html[data-rift-effective-theme='light'] .rvc-parity-message-list .file-attachment{background:#fff!important;border-color:#cbd1d8!important;color:#252b33!important}html[data-rift-effective-theme='light'] .rvc-parity-message-list .reaction-chip{background:#fff!important;border-color:#cbd1d8!important;color:#252b33!important}html[data-rift-effective-theme='light'] .rvc-parity-message-list>.message.rift-message-continuation::before{color:#737c87!important}
