/* RiseWithVishwas Community Chat — isolated component styles for Kadence compatibility */
.rwvc-app, .rwvc-app * { box-sizing: border-box; }
.rwvc-app { --rwvc-bg:#232428; --rwvc-panel:#1b1c20; --rwvc-panel-2:#202126; --rwvc-border:#34363e; --rwvc-text:#f3f4f8; --rwvc-muted:#999ca9; --rwvc-accent:#7483ff; --rwvc-accent-dark:#5865f2; --rwvc-radius:12px; position:relative; display:grid; grid-template-columns:58px 238px minmax(0,1fr) 224px; width:100%; min-height:690px; height:min(82vh,900px); max-height:900px; overflow:hidden; border:1px solid #303138; border-radius:16px; background:var(--rwvc-bg); color:var(--rwvc-text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:14px; line-height:1.45; text-align:left; isolation:isolate; }
.rwvc-app button, .rwvc-app input, .rwvc-app textarea { font:inherit; }
.rwvc-app button { cursor:pointer; }
.rwvc-app a { text-decoration:none; }
.rwvc-app h1,.rwvc-app h2,.rwvc-app p { margin-top:0; }
.rwvc-server-rail { display:flex; flex-direction:column; align-items:center; gap:12px; padding:15px 8px; background:#15161a; border-right:1px solid #292a30; }
.rwvc-brand-mark { display:grid; place-items:center; width:40px; height:40px; margin-bottom:4px; border-radius:14px; background:linear-gradient(145deg,#8793ff,#5865f2); color:#fff; font-weight:800; font-size:12px; letter-spacing:-.5px; box-shadow:0 6px 18px #5865f233; }
.rwvc-rail-button { display:grid; place-items:center; width:40px; height:40px; border:0; border-radius:13px; background:#27282e; color:#c5c7d1; font-size:22px; transition:background .18s,border-radius .18s; }
.rwvc-rail-button:hover,.rwvc-rail-button.is-active { background:var(--rwvc-accent-dark); color:#fff; border-radius:12px; }
.rwvc-rail-divider { width:26px; height:1px; background:#3a3b42; }
.rwvc-channel-panel { display:flex; min-width:0; flex-direction:column; background:var(--rwvc-panel-2); border-right:1px solid #2f3037; }
.rwvc-community-heading { display:flex; align-items:center; justify-content:space-between; padding:22px 17px 20px; border-bottom:1px solid #303139; }
.rwvc-community-heading h2 { margin:3px 0 0; color:#f5f5f8; font-size:18px; font-weight:750; letter-spacing:-.5px; }
.rwvc-eyebrow { color:#8e94ff; font-size:9px; font-weight:800; letter-spacing:1.25px; }
.rwvc-live-dot { width:8px; height:8px; border-radius:100%; background:#42c58a; box-shadow:0 0 0 4px #42c58a1a; }
.rwvc-panel-label { padding:21px 15px 8px; color:#858895; font-size:10px; font-weight:800; letter-spacing:1.2px; }
.rwvc-channel-list { display:flex; flex-direction:column; gap:3px; padding:0 9px; }
.rwvc-channel-button { display:flex; align-items:center; gap:9px; width:100%; min-width:0; padding:10px 11px; border:0; border-radius:7px; background:transparent; color:#aeb0bc; text-align:left; transition:background .15s,color .15s; }
.rwvc-channel-button:hover { background:#2c2d34; color:#f4f4f7; }
.rwvc-channel-button.is-active { background:#3a3c49; color:#fff; font-weight:650; }
.rwvc-channel-hash-small { color:#818492; font-size:19px; line-height:1; }
.rwvc-channel-button.is-active .rwvc-channel-hash-small { color:#bdc2ff; }
.rwvc-channel-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rwvc-current-user { display:flex; align-items:center; gap:9px; margin-top:auto; padding:13px 12px; background:#191a1f; border-top:1px solid #303139; }
.rwvc-current-avatar,.rwvc-message-avatar img,.rwvc-member-avatar img { display:block; width:34px; height:34px; border-radius:50%; object-fit:cover; }
.rwvc-current-user-meta,.rwvc-member-meta { display:flex; flex:1; min-width:0; flex-direction:column; }
.rwvc-current-user-meta strong { overflow:hidden; color:#f1f1f4; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.rwvc-current-user-meta span { margin-top:2px; color:#8d909c; font-size:10px; }
.rwvc-logout { display:grid; place-items:center; width:25px; height:25px; border-radius:6px; color:#9da0ad; font-size:16px; }
.rwvc-logout:hover { background:#30313a; color:white; }
.rwvc-chat-panel { display:flex; min-width:0; flex-direction:column; background:var(--rwvc-bg); }
.rwvc-chat-header { display:flex; min-height:76px; align-items:center; gap:12px; padding:14px 22px; border-bottom:1px solid #34353c; box-shadow:0 3px 12px #0000000a; }
.rwvc-channel-hash { color:#a1a4b2; font-size:27px; font-weight:500; }
.rwvc-header-title { flex:1; min-width:0; }
.rwvc-header-title h1 { overflow:hidden; margin:0; color:#fafaff; font-size:15px; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.rwvc-header-title p { overflow:hidden; margin:3px 0 0; color:#9497a4; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.rwvc-members-toggle,.rwvc-mobile-menu { display:none; border:1px solid #3a3b45; border-radius:7px; background:#2c2d34; color:#dfe0e8; padding:7px 9px; }
.rwvc-message-list { display:flex; flex:1; min-height:0; flex-direction:column; gap:3px; overflow:auto; padding:24px 23px 18px; scrollbar-color:#464852 transparent; scrollbar-width:thin; }
.rwvc-message { display:flex; align-items:flex-start; gap:12px; padding:9px 9px; border-radius:9px; animation:rwvc-fade-in .18s ease-out; }
.rwvc-message:hover { background:#ffffff04; }
.rwvc-message-avatar { flex:0 0 36px; display:grid; place-items:center; width:36px; height:36px; overflow:hidden; border:1px solid #ffffff12; border-radius:50%; background:linear-gradient(145deg,#727fff,#4751a8); color:#fff; font-size:11px; font-weight:800; }
.rwvc-message-avatar img { width:36px; height:36px; }
.rwvc-message-body { flex:1; min-width:0; }
.rwvc-message-meta { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; margin:0 0 4px; }
.rwvc-message-author { color:#f3f3f8; font-size:12px; font-weight:750; }
.rwvc-message-time { color:#858895; font-size:10px; }
.rwvc-message-text { overflow-wrap:anywhere; margin:0; color:#d5d6df; font-size:13px; line-height:1.65; white-space:pre-wrap; }
.rwvc-empty-state,.rwvc-loading-state { display:grid; flex:1; place-items:center; min-height:140px; color:#999ca9; text-align:center; font-size:13px; }
.rwvc-composer { margin:0 20px 20px; padding:10px 12px 9px; border:1px solid #42444e; border-radius:11px; background:#2d2e35; box-shadow:0 5px 20px #0000000a; }
.rwvc-composer:focus-within { border-color:#666fe1; box-shadow:0 0 0 2px #6875ff1b; }
.rwvc-composer textarea { display:block; width:100%; min-height:28px; max-height:140px; resize:none; border:0 !important; outline:0 !important; background:transparent !important; box-shadow:none !important; color:#f4f4f7 !important; padding:4px 2px 8px !important; line-height:1.5; }
.rwvc-composer textarea::placeholder { color:#9396a3; }
.rwvc-composer-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:5px; border-top:1px solid #3b3c45; }
.rwvc-composer-footer > span { color:#888b98; font-size:10px; }
.rwvc-send-button { display:flex; align-items:center; gap:9px; padding:7px 11px; border:0; border-radius:7px; background:#6474f6; color:white; font-size:11px; font-weight:750; transition:background .15s,transform .15s; }
.rwvc-send-button:hover { background:#7b88ff; transform:translateY(-1px); }
.rwvc-send-button:disabled { cursor:wait; opacity:.6; }
.rwvc-send-button b { font-size:14px; }
.rwvc-member-panel { display:flex; min-width:0; flex-direction:column; padding:21px 14px; border-left:1px solid #32333a; background:#202126; }
.rwvc-member-heading { display:flex; align-items:center; justify-content:space-between; }
.rwvc-member-heading h2 { margin:0; color:#f0f0f5; font-size:13px; font-weight:750; }
.rwvc-member-heading > span { display:grid; place-items:center; min-width:22px; height:22px; padding:0 5px; border-radius:7px; background:#30313a; color:#b6b8c5; font-size:10px; }
.rwvc-muted,.rwvc-member-note { color:#858895; font-size:11px; }
.rwvc-member-note { margin:5px 0 16px; }
.rwvc-member-list { display:flex; flex-direction:column; gap:14px; }
.rwvc-member-row { display:flex; align-items:center; gap:9px; min-width:0; }
.rwvc-member-avatar { position:relative; flex:0 0 32px; display:grid; place-items:center; width:32px; height:32px; overflow:hidden; border-radius:50%; background:#3a3c47; color:#fff; font-size:10px; font-weight:750; }
.rwvc-member-avatar img { width:32px; height:32px; }
.rwvc-member-meta strong { overflow:hidden; color:#dedfe7; font-size:11px; font-weight:650; text-overflow:ellipsis; white-space:nowrap; }
.rwvc-member-meta span { margin-top:2px; color:#858895; font-size:10px; }
.rwvc-tier-note { margin-top:auto; padding:14px 12px; border:1px solid #393b49; border-radius:9px; background:linear-gradient(140deg,#2d3040,#272832); }
.rwvc-tier-spark { display:block; margin-bottom:8px; color:#9da7ff; font-size:18px; }
.rwvc-tier-note strong { color:#f0f0f8; font-size:11px; }
.rwvc-tier-note p { margin:5px 0 0; color:#a2a5b2; font-size:10px; line-height:1.55; }
.rwvc-mobile-scrim { display:none; }
.rwvc-login-gate { max-width:640px; margin:28px auto; padding:42px 28px; border:1px solid #353640; border-radius:16px; background:#202126; color:#f5f5f8; text-align:center; font-family:Inter,ui-sans-serif,system-ui,sans-serif; }
.rwvc-gate-icon { display:grid; place-items:center; width:54px; height:54px; margin:0 auto 18px; border-radius:16px; background:#5865f2; color:white; font-size:27px; }
.rwvc-login-gate h2 { margin:0 0 10px; color:#fafaff; font-size:25px; letter-spacing:-.6px; }
.rwvc-login-gate p { margin:0 auto 22px; max-width:440px; color:#aeb0bd; font-size:14px; line-height:1.65; }
.rwvc-gate-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }
.rwvc-button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:11px 16px; border:1px solid transparent; border-radius:8px; font-size:12px; font-weight:750; text-align:center; cursor:pointer; }
.rwvc-button-primary { background:#6474f6; color:#fff !important; }
.rwvc-button-primary:hover { background:#7785ff; color:#fff !important; }
.rwvc-button-secondary { border-color:#454752; background:#2b2d35; color:#e4e5ed !important; }
.rwvc-button-secondary:hover { background:#363842; color:#fff !important; }
.rwvc-button-current { background:#30313a; color:#afb3c2; }
.rwvc-button-disabled { background:#2a2b32; color:#868996; cursor:not-allowed; }
.rwvc-plans-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; width:100%; margin:24px 0; font-family:Inter,ui-sans-serif,system-ui,sans-serif; }
.rwvc-plan-card { position:relative; display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:27px 23px 23px; border:1px solid #383943; border-radius:14px; background:#202126; color:#f1f1f6; }
.rwvc-plan-card.is-featured { border-color:#6976ff; box-shadow:0 0 0 1px #6976ff33,0 14px 35px #10112514; }
.rwvc-plan-badge { position:absolute; top:13px; right:13px; padding:5px 7px; border-radius:5px; background:#454bb1; color:#fff; font-size:9px; font-weight:800; letter-spacing:.7px; }
.rwvc-plan-kicker { margin:0 0 9px; color:#9297ff; font-size:9px; font-weight:800; letter-spacing:1.1px; }
.rwvc-plan-card h2 { margin:0 0 8px; color:#fff; font-size:23px; font-weight:800; letter-spacing:-.5px; }
.rwvc-plan-price { margin:0 0 15px; color:#f3f4fb; font-size:21px; font-weight:750; }
.rwvc-plan-description { flex:1; min-height:64px; margin:0 0 22px; color:#aeb0bc; font-size:12px; line-height:1.7; }
.rwvc-plan-card .rwvc-button { width:100%; }
.rwvc-plan-small { display:block; margin-top:10px; color:#8d909c; font-size:10px; line-height:1.5; }
.rwvc-plans-notice { padding:14px 16px; border:1px solid #e9d6a5; border-radius:8px; background:#fff9e9; color:#624d17; font-size:13px; }
@keyframes rwvc-fade-in { from { opacity:0; transform:translateY(3px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:1160px) { .rwvc-app { grid-template-columns:54px 215px minmax(0,1fr); } .rwvc-member-panel { display:none; } .rwvc-members-toggle { display:inline-flex; align-items:center; gap:6px; } .rwvc-app.show-members .rwvc-member-panel { position:absolute; z-index:6; top:0; right:0; bottom:0; display:flex; width:min(270px,85vw); box-shadow:-18px 0 40px #00000035; } }
@media (max-width:760px) { .rwvc-app { grid-template-columns:minmax(0,1fr); height:78vh; min-height:620px; max-height:850px; border-radius:12px; } .rwvc-server-rail { display:none; } .rwvc-channel-panel { position:absolute; z-index:7; top:0; bottom:0; left:0; display:none; width:min(280px,86vw); box-shadow:18px 0 40px #00000035; } .rwvc-app.show-channels .rwvc-channel-panel { display:flex; } .rwvc-chat-header { min-height:68px; gap:9px; padding:12px 13px; } .rwvc-mobile-menu { display:inline-grid; place-items:center; flex:0 0 34px; width:34px; height:34px; padding:0; font-size:15px; } .rwvc-header-title h1 { font-size:14px; } .rwvc-header-title p { max-width:52vw; font-size:10px; } .rwvc-members-toggle { padding:7px; font-size:11px; } .rwvc-members-toggle span { display:none; } .rwvc-message-list { padding:17px 8px 13px; } .rwvc-message { gap:9px; padding:8px 5px; } .rwvc-message-avatar,.rwvc-message-avatar img { flex-basis:32px; width:32px; height:32px; } .rwvc-message-text { font-size:12px; } .rwvc-composer { margin:0 9px 10px; padding:9px; } .rwvc-composer-footer > span { max-width:65%; font-size:9px; } .rwvc-app.show-channels .rwvc-mobile-scrim,.rwvc-app.show-members .rwvc-mobile-scrim { position:absolute; z-index:5; inset:0; display:block; background:#09090cb0; } .rwvc-app.show-members .rwvc-member-panel { z-index:7; } .rwvc-plans-grid { grid-template-columns:1fr; gap:13px; } .rwvc-plan-card { padding:24px 20px; } .rwvc-plan-description { min-height:0; } }
@media (prefers-reduced-motion: reduce) { .rwvc-app *, .rwvc-app *::before, .rwvc-app *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; } }

/* v0.3.0 layout hardening: keep the message composer in the visible chat panel. */
.rwvc-app { grid-template-rows: minmax(0, 1fr); }
.rwvc-chat-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
.rwvc-chat-header { grid-row: 1; min-width: 0; }
.rwvc-message-list {
  grid-row: 2;
  min-width: 0;
  min-height: 0;
  overscroll-behavior: contain;
}
.rwvc-app form.rwvc-composer {
  grid-row: 3;
  display: block !important;
  position: relative;
  z-index: 2;
  flex: none;
  align-self: stretch;
  min-width: 0;
  width: auto;
  visibility: visible !important;
  opacity: 1 !important;
}
.rwvc-app form.rwvc-composer textarea {
  display: block !important;
  width: 100% !important;
  min-height: 34px;
  max-width: 100%;
  color: #f4f4f7 !important;
  caret-color: #ffffff;
}
.rwvc-app form.rwvc-composer .rwvc-composer-footer {
  display: flex !important;
  min-height: 39px;
  align-items: center;
}
.rwvc-app form.rwvc-composer button.rwvc-send-button {
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: auto !important;
  min-width: 90px;
  min-height: 38px;
  position: static;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap;
  background: #6474f6 !important;
  color: #ffffff !important;
}
.rwvc-app form.rwvc-composer button.rwvc-send-button:focus-visible,
.rwvc-app form.rwvc-composer textarea:focus-visible {
  outline: 2px solid #aab2ff !important;
  outline-offset: 2px;
}

/* Short laptop viewports: avoid the old 690px minimum pushing the composer below the fold. */
@media (min-width: 761px) and (max-height: 820px) {
  .rwvc-app {
    height: calc(100vh - 150px);
    min-height: 480px;
    max-height: none;
  }
  .rwvc-chat-header { min-height: 62px; padding: 10px 18px; }
  .rwvc-message-list { padding: 14px 16px 10px; }
  .rwvc-app form.rwvc-composer { margin: 0 14px 12px; padding: 8px 10px; }
}

@media (max-width: 760px) and (max-height: 700px) {
  .rwvc-app {
    height: calc(100vh - 105px);
    min-height: 460px;
    max-height: none;
  }
}



/* v0.4.0: visibility labels, presence indicators and moderator message actions. */
.rwvc-channel-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rwvc-channel-tier { flex:0 0 auto; margin-left:auto; padding:2px 4px; border-radius:4px; background:#30313b; color:#a8adff; font-size:8px; font-weight:800; letter-spacing:.35px; }
.rwvc-channel-button.is-active .rwvc-channel-tier { background:#4a4d64; color:#dce0ff; }
.rwvc-member-avatar { overflow:visible; }
.rwvc-member-avatar img { border-radius:50%; }
.rwvc-presence-dot { position:absolute; right:-1px; bottom:-1px; display:block; width:10px; height:10px; border:2px solid #202126; border-radius:50%; background:#707381; }
.rwvc-member-row.is-online .rwvc-presence-dot { background:#3ba879; box-shadow:0 0 0 2px #3ba8791a; }
.rwvc-member-row.is-offline .rwvc-presence-dot { background:#686b77; }
.rwvc-message-meta { align-items:center; }
.rwvc-message-actions { display:inline-flex; align-items:center; gap:5px; margin-left:auto; }
.rwvc-app .rwvc-delete-message { display:inline-flex; align-items:center; justify-content:center; min-height:24px; padding:3px 7px; border:1px solid #464853; border-radius:5px; background:#2b2c33; color:#b7bac7; font-size:10px; line-height:1.2; }
.rwvc-app .rwvc-delete-message:hover { border-color:#a34c5b; background:#492630; color:#fff; }
.rwvc-app .rwvc-delete-message:disabled { opacity:.55; cursor:wait; }
@media (max-width:760px) {
  .rwvc-channel-tier { font-size:7px; }
  .rwvc-message-actions { margin-left:0; }
}

/* v0.5.0: assigned room guard tools. */
.rwvc-member-action { flex:0 0 auto; margin-left:auto; padding:4px 7px; border:1px solid #454752; border-radius:5px; background:#2b2c33; color:#bfc1cc; font-size:10px; line-height:1.2; cursor:pointer; }
.rwvc-member-action.is-kick:hover { background:#4b272d; border-color:#a54a58; color:#fff; }
.rwvc-member-action.is-restore { border-color:#3b6855; color:#9bdfb8; }
.rwvc-member-action.is-restore:hover { background:#244637; color:#fff; }
.rwvc-member-action:disabled { opacity:.55; cursor:wait; }
.rwvc-member-row { gap:7px; }
.rwvc-member-meta { min-width:0; }
@media (max-width: 1160px) { .rwvc-member-action { padding:4px 6px; } }


/* v0.6.0 — restrained, square-corner interface; full-width layout; emoji reactions. */
.rwvc-app {
  --rwvc-bg:#151b23;
  --rwvc-panel:#111821;
  --rwvc-panel-2:#1b2531;
  --rwvc-border:#2e3947;
  --rwvc-text:#e8edf3;
  --rwvc-muted:#9aa7b5;
  --rwvc-accent:#4d88c7;
  --rwvc-accent-dark:#356fae;
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  height:min(84vh,1000px);
  min-height:560px;
  border:0;
  border-radius:0 !important;
  box-shadow:none;
  background:var(--rwvc-bg);
  color:var(--rwvc-text);
}
.rwvc-app *, .rwvc-app *::before, .rwvc-app *::after { border-radius:0 !important; }
.rwvc-app .rwvc-current-avatar,
.rwvc-app .rwvc-message-avatar,
.rwvc-app .rwvc-message-avatar img,
.rwvc-app .rwvc-member-avatar,
.rwvc-app .rwvc-member-avatar img,
.rwvc-app .rwvc-live-dot,
.rwvc-app .rwvc-presence-dot { border-radius:0 !important; }
.rwvc-server-rail { background:#111821; border-right:1px solid #2a3542; }
.rwvc-brand-mark { background:#356fae; box-shadow:none; }
.rwvc-message-avatar { background:#344a60; border:1px solid #40566d; }
.rwvc-member-avatar { background:#29394a; }
.rwvc-rail-button,.rwvc-rail-button:hover,.rwvc-rail-button.is-active { background:#1d2937; color:#e5edf6; }
.rwvc-channel-panel { background:#17212c; border-right:1px solid #2a3542; }
.rwvc-community-heading { border-bottom:1px solid #2a3542; }
.rwvc-chat-header { background:#151e28; border-bottom:1px solid #2a3542; box-shadow:none; }
.rwvc-member-panel { background:#17212c; border-left:1px solid #2a3542; }
.rwvc-channel-button.is-active { background:#263b50; color:#f3f7fb; box-shadow:inset 2px 0 0 #6ea3d7; }
.rwvc-channel-button:hover { background:#202f3e; color:#f3f7fb; }
.rwvc-send-button,.rwvc-app form.rwvc-composer button.rwvc-send-button { background:#356fae !important; }
.rwvc-send-button:hover,.rwvc-app form.rwvc-composer button.rwvc-send-button:hover { background:#427fbf !important; }
.rwvc-composer { background:#1b2531; border-color:#344353; box-shadow:none; }
.rwvc-composer:focus-within { border-color:#5789bb; box-shadow:none; }
.rwvc-tier-note { background:#1b2734; border-color:#2e3d4d; }
.rwvc-message { border-bottom:1px solid #ffffff08; }
.rwvc-message:hover { background:#ffffff06; }
.rwvc-app button:focus-visible,.rwvc-app a:focus-visible,.rwvc-app textarea:focus-visible { outline:2px solid #80b8ed !important; outline-offset:2px; }
.rwvc-reaction-bar { display:flex; flex-wrap:wrap; align-items:center; gap:5px; margin-top:8px; position:relative; }
.rwvc-app .rwvc-reaction-chip,.rwvc-app .rwvc-reaction-add { display:inline-flex; align-items:center; justify-content:center; min-height:27px; padding:3px 8px; border:1px solid #394756; background:#202c39; color:#dfe8f1; font-size:12px; line-height:1.25; cursor:pointer; }
.rwvc-app .rwvc-reaction-chip.is-reacted { border-color:#5b8fc2; background:#263f57; color:#fff; }
.rwvc-app .rwvc-reaction-chip:hover,.rwvc-app .rwvc-reaction-add:hover { background:#2b3d50; border-color:#5d7894; }
.rwvc-app .rwvc-reaction-add { min-width:28px; padding:3px 7px; color:#b8c7d6; font-size:16px; }
.rwvc-emoji-picker { display:flex; flex-wrap:wrap; gap:2px; position:absolute; z-index:8; left:28px; bottom:32px; width:min(260px,80vw); padding:6px; border:1px solid #405062; background:#111a24; box-shadow:0 10px 25px #0007; }
.rwvc-emoji-picker[hidden] { display:none !important; }
.rwvc-app .rwvc-emoji-choice { display:inline-grid; place-items:center; width:34px; height:34px; padding:0; border:0; background:transparent; color:#fff; font-size:18px; cursor:pointer; }
.rwvc-app .rwvc-emoji-choice:hover { background:#2b3d50; }
.rwvc-app .rwvc-reaction-chip:disabled,.rwvc-app .rwvc-reaction-add:disabled,.rwvc-app .rwvc-emoji-choice:disabled { opacity:.5; cursor:wait; }
@media (max-width:760px) {
  .rwvc-app { width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); height:calc(100dvh - 100px); min-height:480px; max-height:none; }
}


/* v0.7 moderation/report controls */
.rwvc-report-message,
.rwvc-member-action {
  border: 1px solid #cbd5e1;
  border-radius: 0 !important;
  background: #fff;
  color: #334155;
  font: inherit;
  font-size: 12px;
  line-height: 1.35;
  padding: 5px 8px;
  cursor: pointer;
}
.rwvc-report-message:hover,
.rwvc-member-action:hover { background: #f1f5f9; color: #0f172a; }
.rwvc-report-message:disabled,
.rwvc-member-action:disabled { opacity: .55; cursor: wait; }
.rwvc-member-action.is-ban { color: #9f1239; border-color: #fda4af; }
.rwvc-member-action.is-timeout { color: #92400e; border-color: #fcd34d; }
.rwvc-member-action.is-unban,
.rwvc-member-action.is-untimeout { color: #166534; border-color: #86efac; }
.rwvc-message-actions { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }


/* v0.8.0 — member roster layout: preserve readable names and make the entire roster scrollable. */
.rwvc-app .rwvc-member-panel {
  display:flex;
  flex-direction:column;
  height:100%;
  min-height:0;
  overflow:hidden;
  padding:14px 10px 10px;
}
.rwvc-app .rwvc-member-heading,
.rwvc-app .rwvc-member-note { flex:0 0 auto; }
.rwvc-app .rwvc-member-list {
  flex:1 1 0;
  min-height:0;
  height:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#536273 transparent;
  padding:0 4px 10px 0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
}
.rwvc-app .rwvc-member-row {
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  align-items:start;
  column-gap:8px;
  row-gap:4px;
  width:100%;
  min-width:0;
  padding:6px 0 8px;
  border-bottom:1px solid #ffffff0c;
}
.rwvc-app .rwvc-member-avatar { grid-column:1; grid-row:1; }
.rwvc-app .rwvc-member-meta {
  grid-column:2;
  grid-row:1;
  display:flex;
  flex-direction:column;
  flex:initial;
  min-width:0;
  width:100%;
  overflow:hidden;
}
.rwvc-app .rwvc-member-meta strong {
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  overflow-wrap:normal;
  line-height:1.35;
}
.rwvc-app .rwvc-member-meta span {
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  overflow-wrap:normal;
  line-height:1.35;
}
.rwvc-app .rwvc-member-actions {
  grid-column:1 / -1;
  grid-row:2;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px;
  min-width:0;
  max-width:100%;
}
.rwvc-app .rwvc-member-action {
  display:inline-flex;
  flex:0 1 auto;
  align-items:center;
  justify-content:center;
  min-width:0;
  max-width:100%;
  min-height:25px;
  margin:0;
  padding:4px 6px;
  line-height:1.2;
  white-space:nowrap;
  word-break:normal;
  overflow-wrap:normal;
}
.rwvc-app .rwvc-tier-note { flex:0 0 auto; margin-top:8px; }
@media (max-width:1160px) {
  .rwvc-app.show-members .rwvc-member-panel { height:100%; min-height:0; overflow:hidden; }
}
.rwvc-app .rwvc-member-list::-webkit-scrollbar { width:8px; }
.rwvc-app .rwvc-member-list::-webkit-scrollbar-track { background:transparent; }
.rwvc-app .rwvc-member-list::-webkit-scrollbar-thumb { background:#526477; border:2px solid transparent; background-clip:padding-box; }
.rwvc-app .rwvc-member-list::-webkit-scrollbar-thumb:hover { background:#71869c; border:2px solid transparent; background-clip:padding-box; }


/* v0.9.0 — accessible history pagination and clearer button affordance. */
.rwvc-app { border-radius:0 !important; }
.rwvc-app .rwvc-load-older {
  align-self:center;
  flex:0 0 auto;
  margin:0 auto 10px;
  padding:7px 12px;
  border:1px solid #405062;
  background:#202c39;
  color:#dfe8f1;
  font-size:12px;
  cursor:pointer;
}
.rwvc-app .rwvc-load-older:hover { background:#2b3d50; border-color:#5d7894; }
.rwvc-app .rwvc-load-older:disabled { opacity:.6; cursor:wait; }
.rwvc-app .rwvc-load-older[hidden] { display:none !important; }


/* v1.0.0 — simplified, square-corner RiseWithVishwas workspace. */
.rwvc-app {
  grid-template-columns:minmax(205px,248px) minmax(0,1fr) minmax(195px,235px) !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#141c26 !important;
  color:#e7edf4;
}
.rwvc-app .rwvc-server-rail { display:none !important; }
.rwvc-app .rwvc-channel-panel {
  grid-column:1;
  grid-row:1;
  min-height:0;
  border-right:1px solid #293746;
  background:#17212c;
}
.rwvc-app .rwvc-chat-panel {
  grid-column:2;
  grid-row:1;
  min-width:0;
  min-height:0;
  background:#141c26;
}
.rwvc-app .rwvc-member-panel {
  grid-column:3;
  grid-row:1;
  min-width:0;
  min-height:0;
  border-left:1px solid #293746;
  background:#17212c;
}
.rwvc-app .rwvc-community-heading,
.rwvc-app .rwvc-tier-note { display:none !important; }
.rwvc-app .rwvc-panel-label {
  display:block;
  flex:0 0 auto;
  padding:20px 16px 10px;
  color:#91a2b4;
  font-size:10px;
  letter-spacing:1px;
  border-bottom:1px solid #243241;
}
.rwvc-app .rwvc-channel-list {
  min-height:0;
  flex:1 1 auto;
  overflow-y:auto;
  padding:10px 8px;
  scrollbar-width:thin;
  scrollbar-color:#405366 transparent;
}
.rwvc-app .rwvc-current-user {
  flex:0 0 auto;
  border-top:1px solid #293746;
  background:#111922;
}
.rwvc-app .rwvc-chat-header {
  min-height:82px;
  padding:15px 21px;
  background:#141c26;
  border-bottom:1px solid #293746;
}
.rwvc-app .rwvc-header-title p {
  max-width:100%;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  white-space:normal;
  overflow-wrap:anywhere;
  color:#9aaaba;
  font-size:11px;
  line-height:1.45;
}
.rwvc-app .rwvc-message-list {
  min-height:0;
  overscroll-behavior:contain;
}
.rwvc-app .rwvc-member-panel {
  padding:16px 10px 10px;
}
.rwvc-app .rwvc-member-heading,
.rwvc-app .rwvc-member-note { flex:0 0 auto; }
.rwvc-app .rwvc-member-list {
  flex:1 1 0;
  height:0;
  min-height:0;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#526579 transparent;
  padding:0 4px 12px 0;
}
.rwvc-app .rwvc-member-row {
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:5px 8px;
  padding:7px 0;
  border-bottom:1px solid #263342;
}
.rwvc-app .rwvc-member-avatar,
.rwvc-app .rwvc-member-avatar img {
  width:30px;
  height:30px;
  min-width:30px;
}
.rwvc-app .rwvc-member-meta { min-width:0; overflow:hidden; }
.rwvc-app .rwvc-member-meta strong {
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
}
.rwvc-app .rwvc-member-meta span {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:10px;
}
.rwvc-app .rwvc-member-actions {
  grid-column:1 / -1;
  grid-row:2;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px;
  width:100%;
  min-width:0;
  margin:0;
}
.rwvc-app .rwvc-report-message,
.rwvc-app .rwvc-delete-message,
.rwvc-app .rwvc-member-action {
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  height:auto;
  margin:0;
  padding:2px 6px;
  border:1px solid #405164 !important;
  border-radius:0 !important;
  background:#1b2734 !important;
  color:#bdc9d6 !important;
  box-shadow:none !important;
  font-size:10px !important;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
  text-decoration:none;
  transition:none !important;
  animation:none !important;
}
.rwvc-app .rwvc-report-message:hover,
.rwvc-app .rwvc-delete-message:hover,
.rwvc-app .rwvc-member-action:hover {
  border-color:#64819e !important;
  background:#233548 !important;
  color:#eef5fc !important;
}
.rwvc-app .rwvc-member-action.is-timeout { border-color:#756746 !important; color:#dbc995 !important; }
.rwvc-app .rwvc-member-action.is-ban { border-color:#79515a !important; color:#d8a6ad !important; }
.rwvc-app .rwvc-member-action.is-unban,
.rwvc-app .rwvc-member-action.is-untimeout,
.rwvc-app .rwvc-member-action.is-restore { border-color:#42675a !important; color:#a8d1bd !important; }
.rwvc-app button:disabled { cursor:not-allowed; opacity:.6; }
.rwvc-app .rwvc-message { animation:none !important; border-radius:0 !important; }
.rwvc-app .rwvc-message-actions { gap:4px; }
.rwvc-app .rwvc-message-meta { gap:7px; }
.rwvc-app .rwvc-reaction-chip,
.rwvc-app .rwvc-reaction-add { transition:none !important; animation:none !important; }

.rwvc-admin-wrap .rwvc-admin-section,
.rwvc-admin-wrap .rwvc-admin-room-card {
  border-radius:0 !important;
}
.rwvc-admin-wrap .rwvc-admin-section[style],
.rwvc-admin-wrap section[style] {
  border-radius:0 !important;
}
@media (max-width:1160px) {
  .rwvc-app {
    grid-template-columns:minmax(190px,225px) minmax(0,1fr) !important;
  }
  .rwvc-app .rwvc-channel-panel { grid-column:1; }
  .rwvc-app .rwvc-chat-panel { grid-column:2; }
  .rwvc-app .rwvc-member-panel { display:none; }
  .rwvc-app.show-members .rwvc-member-panel {
    position:absolute;
    z-index:7;
    top:0;
    right:0;
    bottom:0;
    display:flex;
    width:min(270px,85vw);
    height:100%;
    box-shadow:-12px 0 28px #0004;
  }
}
@media (max-width:760px) {
  .rwvc-app {
    grid-template-columns:minmax(0,1fr) !important;
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    height:calc(100dvh - 100px);
    min-height:480px;
    max-height:none;
  }
  .rwvc-app .rwvc-channel-panel {
    position:absolute;
    z-index:8;
    top:0;
    bottom:0;
    left:0;
    display:none;
    width:min(280px,86vw);
    grid-column:auto;
    box-shadow:12px 0 30px #0005;
  }
  .rwvc-app.show-channels .rwvc-channel-panel { display:flex; }
  .rwvc-app .rwvc-chat-panel { grid-column:1; grid-row:1; }
  .rwvc-app .rwvc-member-panel { grid-column:auto; grid-row:auto; }
  .rwvc-app .rwvc-chat-header { min-height:72px; padding:12px; }
  .rwvc-app .rwvc-header-title p { max-width:52vw; -webkit-line-clamp:2; }
  .rwvc-app .rwvc-message-actions { flex-wrap:wrap; margin-left:0; }
}
