/* BolsaHoy · compositor compartido de Comunidad y fichas de activo.
   Una única barra para que el chat se comporte igual al entrar desde ambos sitios. */

/* Superficie compartida del chat: misma ligereza que «Activos relacionados».
   El contenedor deja respirar el fondo de la página; mensajes y composer
   siguen siendo capas independientes para conservar contraste y jerarquía. */
.forum,
body[data-community-focus="true"] .chat {
  border-color:rgba(91,137,185,.14) !important;
  background:rgba(7,22,42,.28) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}

[data-theme="light"] .forum,
[data-theme="light"] body[data-community-focus="true"] .chat {
  border-color:rgba(71,117,178,.14) !important;
  background:rgba(255,255,255,.34) !important;
}

.forum .forum-head,
.forum .forum-list,
.forum .forum-form,
body[data-community-focus="true"] .chat-head,
body[data-community-focus="true"] .posts,
body[data-community-focus="true"] #postForm {
  background:transparent !important;
}

.forum .forum-form,
body[data-community-focus="true"] #postForm {
  display:flex !important;
  align-items:flex-end !important;
  gap:10px !important;
  width:100% !important;
  min-width:0 !important;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
  border-top:1px solid color-mix(in srgb,var(--blue) 18%,var(--line)) !important;
  background:color-mix(in srgb,var(--bh-bg) 88%,transparent) !important;
  box-shadow:0 -8px 20px rgba(0,0,0,.08) !important;
}

[data-theme="light"] .forum .forum-form,
[data-theme="light"] body[data-community-focus="true"] #postForm {
  border-top-color:rgba(31,128,255,.14) !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 -8px 20px rgba(44,91,143,.06) !important;
}

.forum .forum-composer-field,
body[data-community-focus="true"] .composer-field {
  flex:1 1 auto !important;
  min-width:0 !important;
  min-height:48px !important;
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  align-items:end !important;
  gap:0 4px !important;
  padding:5px 6px 5px 8px !important;
  border:1px solid color-mix(in srgb,var(--blue) 22%,var(--line)) !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--bh-bg) 72%,var(--blue) 5%) !important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--white) 12%,transparent) !important;
}

[data-theme="light"] .forum .forum-composer-field,
[data-theme="light"] body[data-community-focus="true"] .composer-field {
  border-color:rgba(31,128,255,.2) !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 3px 12px rgba(37,88,145,.06) !important;
}

.forum .forum-composer-field:focus-within,
body[data-community-focus="true"] .composer-field:focus-within {
  border-color:rgba(31,128,255,.68) !important;
  background:color-mix(in srgb,var(--bh-bg) 66%,var(--blue) 7%) !important;
  box-shadow:0 0 0 3px rgba(31,128,255,.12),inset 0 1px 0 rgba(255,255,255,.1) !important;
}

.forum .forum-composer-field textarea,
body[data-community-focus="true"] .composer-field #postBody {
  flex:1 1 auto !important;
  width:100% !important;
  min-width:0 !important;
  min-height:36px !important;
  max-height:112px !important;
  grid-column:2 !important;
  grid-row:2 !important;
  height:auto;
  margin:0 !important;
  padding:8px 7px !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  resize:none !important;
  overflow-y:auto !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--white) !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:1.4 !important;
}

.forum .forum-composer-field textarea::placeholder,
body[data-community-focus="true"] #postBody::placeholder {
  color:color-mix(in srgb,var(--muted) 82%,transparent) !important;
}

.forum .forum-attach,
body[data-community-focus="true"] .composer-attach-btn {
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  flex:0 0 38px !important;
  display:grid !important;
  place-items:center !important;
  grid-column:1 !important;
  grid-row:2 !important;
  align-self:end !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  color:var(--blue) !important;
  cursor:pointer;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}

.forum .forum-attach:hover,
.forum .forum-attach:focus-visible,
.forum .forum-attach.has-image,
body[data-community-focus="true"] .composer-attach-btn:hover,
body[data-community-focus="true"] .composer-attach-btn:focus-visible,
body[data-community-focus="true"] .composer-attach-btn.has-image {
  background:rgba(31,128,255,.13) !important;
  color:var(--blue) !important;
}

.forum .forum-attach:active,
body[data-community-focus="true"] .composer-attach-btn:active { transform:scale(.94); }

.forum .forum-attach-icon,
body[data-community-focus="true"] .composer-attach-btn .bh-icon {
  width:19px !important;
  height:19px !important;
  display:block !important;
  pointer-events:none;
}

.forum .forum-send,
body[data-community-focus="true"] .composer-send-btn {
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  min-height:48px !important;
  flex:0 0 48px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:1px solid rgba(93,176,255,.52) !important;
  border-radius:50% !important;
  background:linear-gradient(145deg,#2b8cff,#1261d3) !important;
  color:#fff !important;
  font-size:0 !important;
  line-height:1 !important;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(31,128,255,.28),inset 0 1px 0 rgba(255,255,255,.2) !important;
  transition:transform .16s ease,filter .16s ease,opacity .16s ease;
}

.forum .forum-send:hover,
body[data-community-focus="true"] .composer-send-btn:hover { transform:translateY(-1px); filter:brightness(1.06); }
.forum .forum-send:active,
body[data-community-focus="true"] .composer-send-btn:active { transform:scale(.95); }
.forum .forum-send:disabled,
body[data-community-focus="true"] .composer-send-btn:disabled { opacity:.45; cursor:not-allowed; transform:none; filter:none; }
.forum .forum-send .bh-icon,
body[data-community-focus="true"] .composer-send-btn .bh-icon { width:19px !important; height:19px !important; display:block !important; }

.forum .forum-composer-preview,
body[data-community-focus="true"] .composer-preview {
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:0 !important;
  grid-column:1 / -1 !important;
  grid-row:1 !important;
  width:100% !important;
  padding:3px 7px 5px !important;
  background:transparent !important;
}

.forum .forum-composer-preview img,
body[data-community-focus="true"] .composer-preview img {
  width:58px !important;
  height:58px !important;
  flex:0 0 58px !important;
  object-fit:cover !important;
  border:1px solid rgba(31,128,255,.3) !important;
  border-radius:12px !important;
  box-shadow:0 5px 14px rgba(0,0,0,.14);
}

.forum .forum-composer-preview button,
body[data-community-focus="true"] .composer-preview button {
  width:28px !important;
  height:28px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:1px solid color-mix(in srgb,var(--white) 18%,transparent) !important;
  border-radius:50% !important;
  background:color-mix(in srgb,var(--bh-bg) 76%,transparent) !important;
  color:var(--white) !important;
  cursor:pointer;
}

.forum .forum-composer-preview button:hover,
body[data-community-focus="true"] .composer-preview button:hover {
  border-color:rgba(239,68,68,.5) !important;
  background:rgba(239,68,68,.12) !important;
  color:#ef4444 !important;
}

/* El atributo hidden debe ganar al layout compartido: sin imagen no hay
   preview ni cruz; sin respuesta activa no hay franja ni Cancelar. */
.forum .forum-composer-preview[hidden],
body[data-community-focus="true"] .composer-preview[hidden],
.forum .forum-reply-state[hidden],
body[data-community-focus="true"] .replying:not(.show) {
  display:none !important;
}

.forum .forum-reply-state,
body[data-community-focus="true"] .replying {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  min-height:34px !important;
  margin:0 !important;
  padding:7px 14px 0 !important;
  border:0 !important;
  background:transparent !important;
  color:var(--muted) !important;
  font-size:11px !important;
}

.forum .forum-reply-state button,
body[data-community-focus="true"] .replying button {
  flex:0 0 auto;
  padding:4px 8px !important;
  border:0 !important;
  border-radius:999px !important;
  background:rgba(31,128,255,.1) !important;
  color:var(--blue) !important;
  font:inherit !important;
  font-weight:800 !important;
  cursor:pointer;
}

/* El hover solo cambia el estado visual; el área táctil no debe desplazarse. */
.forum .message-action--icon:hover,
.forum .message-action--icon:focus-visible,
body[data-community-focus="true"] .message-action--icon:hover,
body[data-community-focus="true"] .message-action--icon:focus-visible {
  transform:none !important;
}

@media (max-width:680px) {
  .forum .forum-form,
  body[data-community-focus="true"] #postForm {
    gap:7px !important;
    padding:7px 9px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .forum .forum-composer-field,
  body[data-community-focus="true"] .composer-field {
    min-height:46px !important;
    grid-template-columns:36px minmax(0,1fr) !important;
    padding:4px 5px 4px 6px !important;
  }
  .forum .forum-composer-field textarea,
  body[data-community-focus="true"] .composer-field #postBody {
    min-height:36px !important;
    max-height:104px !important;
    padding:7px 5px !important;
    font-size:16px !important;
  }
  .forum .forum-attach,
  body[data-community-focus="true"] .composer-attach-btn {
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    flex-basis:36px !important;
  }
  .forum .forum-send,
  body[data-community-focus="true"] .composer-send-btn {
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    flex-basis:44px !important;
  }
  .forum .forum-composer-preview,
  body[data-community-focus="true"] .composer-preview { padding:3px 5px 4px !important; }
  .forum .forum-reply-state,
  body[data-community-focus="true"] .replying { padding:6px 9px 0 !important; font-size:10px !important; }
}

/* Con una imagen seleccionada, la miniatura reemplaza al clip en la misma
   fila. Esto evita el hueco blanco que dejaba el preview ocupando una fila
   completa encima del texto. */
.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])),
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) {
  grid-template-rows:1fr !important;
  align-items:center !important;
  min-height:48px !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-composer-preview,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-preview {
  grid-column:1 !important;
  grid-row:1 !important;
  width:44px !important;
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  margin:0 !important;
  align-self:center !important;
  justify-self:center !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-attach,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-attach-btn {
  grid-column:1 !important;
  grid-row:1 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) textarea,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) #postBody {
  grid-column:2 !important;
  grid-row:1 !important;
  align-self:center !important;
}

/* Override definitivo al final de la hoja: las reglas históricas de la página
   no pueden volver a mostrar el contenedor exterior del formulario. */
.forum .forum-form,
body[data-community-focus="true"] #postForm {
  border:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

[data-theme="light"] body[data-community-focus="true"] #postForm,
[data-theme="dark"] body[data-community-focus="true"] #postForm {
  border:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

[data-theme="light"] .forum .forum-form,
[data-theme="dark"] .forum .forum-form {
  border:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Composer final: una sola cápsula visible. El formulario deja de parecer
   una segunda caja alrededor del campo y el envío queda alineado a su lado,
   igual en la sala de comunidad y en la ficha del activo. */
.forum .forum-form,
body[data-community-focus="true"] #postForm {
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:8px 10px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  border:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.forum .forum-composer-field,
body[data-community-focus="true"] .composer-field {
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  min-height:56px !important;
  height:auto !important;
  padding:6px 10px 6px 12px !important;
  border:1px solid color-mix(in srgb,var(--blue) 22%,var(--line)) !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--bh-bg) 72%,var(--blue) 5%) !important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--white) 12%,transparent) !important;
}

[data-theme="light"] .forum .forum-composer-field,
[data-theme="light"] body[data-community-focus="true"] .composer-field {
  border-color:rgba(31,128,255,.2) !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 3px 12px rgba(37,88,145,.06) !important;
}

.forum .forum-composer-field textarea,
body[data-community-focus="true"] .composer-field #postBody {
  flex:1 1 auto !important;
  min-width:0 !important;
  min-height:40px !important;
  max-height:112px !important;
  width:auto !important;
  height:auto !important;
  grid-column:auto !important;
  grid-row:auto !important;
  align-self:center !important;
  padding:8px 4px !important;
  line-height:1.4 !important;
}

.forum .forum-attach,
body[data-community-focus="true"] .composer-attach-btn {
  flex:0 0 38px !important;
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  grid-column:auto !important;
  grid-row:auto !important;
  align-self:center !important;
}

.forum .forum-send,
body[data-community-focus="true"] .composer-send-btn {
  flex:0 0 52px !important;
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  min-height:52px !important;
  border-radius:50% !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-composer-preview,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-preview {
  position:relative !important;
  display:block !important;
  flex:0 0 44px !important;
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:visible !important;
  grid-column:auto !important;
  grid-row:auto !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-composer-preview img,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-preview img {
  display:block !important;
  width:44px !important;
  height:44px !important;
  max-width:44px !important;
  max-height:44px !important;
  border-radius:10px !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-composer-preview button,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-preview button {
  position:absolute !important;
  top:-6px !important;
  right:-6px !important;
  width:20px !important;
  height:20px !important;
  z-index:2 !important;
  border:1px solid color-mix(in srgb,var(--white) 55%,var(--line)) !important;
  background:color-mix(in srgb,var(--bh-bg) 86%,transparent) !important;
}

@media (max-width:680px) {
  .forum .forum-form,
  body[data-community-focus="true"] #postForm {
    gap:7px !important;
    padding:6px 8px calc(7px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .forum .forum-composer-field,
  body[data-community-focus="true"] .composer-field {
    min-height:48px !important;
    padding:4px 7px 4px 8px !important;
  }
  .forum .forum-composer-field textarea,
  body[data-community-focus="true"] .composer-field #postBody {
    min-height:38px !important;
    padding:7px 3px !important;
    font-size:16px !important;
  }
  .forum .forum-attach,
  body[data-community-focus="true"] .composer-attach-btn {
    flex-basis:34px !important;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
  }
  .forum .forum-send,
  body[data-community-focus="true"] .composer-send-btn {
    flex-basis:46px !important;
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
  }
}

/* La superficie exterior no es otro composer: las reglas históricas de cada
   página no deben volver a dibujarla, especialmente en tema claro. */
[data-theme="light"] body[data-community-focus="true"] #postForm,
[data-theme="dark"] body[data-community-focus="true"] #postForm {
  border:0 !important;
  border-top:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Paridad real entre /activo y /community: el mismo flujo de mensajes,
   burbujas, alineación del mensaje propio y acciones. */
.forum .forum-list,
body[data-community-focus="true"] .posts {
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  background:transparent !important;
}

.forum .forum-post.post,
body[data-community-focus="true"] .post {
  display:flex !important;
  flex:0 0 auto !important;
  align-self:flex-start !important;
  align-items:flex-start !important;
  gap:11px !important;
  width:fit-content !important;
  max-width:min(86%,700px) !important;
  min-width:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}

.forum .forum-post.post.post--mine,
body[data-community-focus="true"] .post.post--mine {
  align-self:flex-end !important;
  flex-direction:row-reverse !important;
}

.forum .forum-message-line.message-line,
body[data-community-focus="true"] .message-line {
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  min-width:0 !important;
}

.forum .forum-post.post--mine .message-line,
body[data-community-focus="true"] .post.post--mine .message-line {
  align-items:flex-end !important;
}

.forum .forum-message-meta.message-meta,
body[data-community-focus="true"] .message-meta {
  display:flex !important;
  align-items:baseline !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 4px 5px !important;
}

.forum .forum-post.post--mine .message-meta,
body[data-community-focus="true"] .post.post--mine .message-meta {
  justify-content:flex-end !important;
}

.forum .forum-bubble.message-bubble,
body[data-community-focus="true"] .message-bubble {
  display:block !important;
  width:fit-content !important;
  max-width:100% !important;
  padding:11px 14px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:5px 17px 17px 17px !important;
  background:rgba(255,255,255,.075) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.15) !important;
  text-align:left !important;
  overflow:hidden !important;
}

[data-theme="light"] .forum .forum-bubble.message-bubble,
[data-theme="light"] body[data-community-focus="true"] .message-bubble {
  border-color:rgba(25,76,136,.12) !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 8px 24px rgba(31,82,146,.1) !important;
}

.forum .forum-post.post--mine .message-bubble,
body[data-community-focus="true"] .post.post--mine .message-bubble {
  color:#fff !important;
  border-color:rgba(93,176,255,.5) !important;
  border-radius:17px 5px 17px 17px !important;
  background:linear-gradient(145deg,#1f80ff,#1261d3) !important;
  box-shadow:0 10px 28px rgba(31,128,255,.26) !important;
}

.forum .message-bubble p,
body[data-community-focus="true"] .message-bubble p {
  display:block !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  color:inherit !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  line-height:1.52 !important;
}

.forum .msg-image-link,
body[data-community-focus="true"] .msg-image-link {
  display:block !important;
  max-width:100% !important;
  line-height:0 !important;
}

.forum .msg-image,
body[data-community-focus="true"] .msg-image {
  display:block !important;
  max-width:min(100%,420px) !important;
  max-height:340px !important;
  object-fit:contain !important;
  border-radius:12px !important;
  background:rgba(0,0,0,.12) !important;
}

.forum .message-bubble .msg-image + p,
body[data-community-focus="true"] .message-bubble .msg-image + p { margin-top:8px !important; }

@media (max-width:680px) {
  .forum .forum-post.post,
  body[data-community-focus="true"] .post { max-width:96% !important; }
  .forum .msg-image,
  body[data-community-focus="true"] .msg-image { max-width:100% !important; max-height:260px !important; }
}

/* En escritorio estrecho no caben salas + chat + mercados a la vez. El
   layout antiguo mantenía las tres columnas y desplazaba todo horizontalmente
   (la barra lateral quedaba cortada, como en la captura). */
@media (min-width:769px) and (max-width:1200px) {
  body[data-community-focus="true"] .comm-shell,
  body[data-community-focus="true"] #chatSection.layout {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  body[data-community-focus="true"] #chatSection.layout {
    grid-template-columns:minmax(190px,230px) minmax(0,1fr) !important;
    gap:12px !important;
    overflow:visible !important;
  }

  body[data-community-focus="true"] #chatSection.layout > #threads.sidebar {
    grid-column:1 !important;
    min-width:0 !important;
  }

  body[data-community-focus="true"] #chatSection.layout > .chat {
    grid-column:2 !important;
    min-width:0 !important;
    width:100% !important;
  }

  body[data-community-focus="true"] #chatSection.layout > .comm-right {
    display:none !important;
  }
}

/* El TradingView mini-chart principal sigue siendo el elemento visible. El
   backup usa el widget mini-symbol-overview local de la propia integración de
   BolsaHoy solo cuando el custom element externo no se registra. */
.asset-hero-shell .hero-mini-chart-shell { position:relative !important; }
.asset-hero-shell .hero-mini-chart-backup {
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  width:100% !important;
  height:100% !important;
  min-height:160px !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  background:transparent !important;
}
.asset-hero-shell .hero-mini-chart-backup.is-active {
  opacity:1 !important;
  visibility:visible !important;
}
.asset-hero-shell .hero-mini-chart-backup iframe,
.asset-hero-shell .hero-mini-chart-backup a {
  pointer-events:none !important;
}
.asset-hero-shell .hero-mini-chart-backup[hidden] { display:block !important; }

/* Composer guardrails: the attachment is a compact WhatsApp-style preview,
   not a second card stacked above the input. Keeping the preview in a fixed
   48px row also prevents the community composer from exceeding its chat
   column on narrow layouts. */
.forum .forum-form,
body[data-community-focus="true"] #postForm,
.forum .forum-composer-field,
body[data-community-focus="true"] .composer-field {
  box-sizing:border-box !important;
  max-width:100% !important;
}

.forum .forum-composer-field,
body[data-community-focus="true"] .composer-field {
  grid-template-rows:auto auto !important;
  overflow:visible !important;
}

.forum .forum-composer-preview,
body[data-community-focus="true"] .composer-preview {
  position:relative !important;
  justify-self:start !important;
  align-self:start !important;
  width:48px !important;
  height:48px !important;
  min-height:48px !important;
  max-height:48px !important;
  flex:0 0 48px !important;
  margin:0 0 0 1px !important;
  padding:0 !important;
  overflow:visible !important;
}

.forum .forum-composer-preview img,
body[data-community-focus="true"] .composer-preview img {
  display:block !important;
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  border-radius:10px !important;
  box-shadow:0 3px 9px rgba(0,0,0,.14) !important;
}

.forum .forum-composer-preview button,
body[data-community-focus="true"] .composer-preview button {
  position:absolute !important;
  top:-5px !important;
  right:-5px !important;
  z-index:2 !important;
  width:21px !important;
  height:21px !important;
  min-width:21px !important;
  min-height:21px !important;
  border:1px solid rgba(255,255,255,.72) !important;
  background:rgba(8,24,45,.88) !important;
  color:#fff !important;
  font-size:14px !important;
  line-height:1 !important;
  box-shadow:0 2px 6px rgba(0,0,0,.18) !important;
}

[data-theme="light"] .forum .forum-composer-preview button,
[data-theme="light"] body[data-community-focus="true"] .composer-preview button {
  border-color:rgba(255,255,255,.95) !important;
  background:#24415f !important;
  color:#fff !important;
}

.forum .forum-composer-field textarea,
body[data-community-focus="true"] .composer-field #postBody {
  box-sizing:border-box !important;
  min-height:36px !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
  line-height:1.35 !important;
}

.forum .forum-form,
body[data-community-focus="true"] #postForm {
  overflow:visible !important;
}

/* The hero quote remains the original TradingView widget. It is visual-only:
   no iframe/link inside it should steal clicks from the page controls. */
.asset-hero-shell .hero-mini-chart-shell,
.asset-hero-shell .hero-mini-chart-shell * {
  pointer-events:none !important;
  user-select:none !important;
}

@media (prefers-reduced-motion: reduce) {
  .forum .forum-attach,
  .forum .forum-send,
  body[data-community-focus="true"] .composer-attach-btn,
  body[data-community-focus="true"] .composer-send-btn { transition:none !important; }
}

/* Última capa: evita que los estilos históricos del composer vuelvan a
   dibujar una franja opaca sobre la superficie ligera del chat. */
.forum .forum-head,
.forum .forum-list,
.forum .forum-form,
body[data-community-focus="true"] .chat-head,
body[data-community-focus="true"] .posts,
body[data-community-focus="true"] #postForm {
  background:transparent !important;
}

.forum .forum-form,
body[data-community-focus="true"] #postForm {
  box-shadow:none !important;
}

/* Acciones estables: el hover solo cambia el estado visual y nunca mueve el
   botón mientras el usuario recorre o desplaza la conversación. */
.forum .message-action,
body[data-community-focus="true"] .message-action {
  transform:none !important;
  transition:color .16s ease, opacity .16s ease, background-color .16s ease, border-color .16s ease !important;
}
.forum .message-action:hover,
.forum .message-action:focus-visible,
body[data-community-focus="true"] .message-action:hover,
body[data-community-focus="true"] .message-action:focus-visible {
  transform:none !important;
}
[data-theme="light"] .forum .message-action--icon,
[data-theme="light"] body[data-community-focus="true"] .message-action--icon {
  color:#46657f !important;
}
[data-theme="dark"] .forum .message-action--icon,
[data-theme="dark"] body[data-community-focus="true"] .message-action--icon {
  color:rgba(228,237,249,.78) !important;
}
[data-theme="light"] .forum .message-action--icon.liked,
[data-theme="light"] body[data-community-focus="true"] .message-action--icon.liked,
[data-theme="dark"] .forum .message-action--icon.liked,
[data-theme="dark"] body[data-community-focus="true"] .message-action--icon.liked {
  color:#ff4f8b !important;
}
.forum .message-action--icon.reported,
body[data-community-focus="true"] .message-action--icon.reported {
  color:#f06d9a !important;
  background:transparent !important;
  border-color:transparent !important;
}
.forum .message-action--icon.reported .message-action-icon,
body[data-community-focus="true"] .message-action--icon.reported .message-action-icon {
  fill:currentColor !important;
  stroke:currentColor !important;
}

/* Si TradingView no entrega el custom element, la ficha sigue mostrando una
   cotización y una línea intradía coherente con el mismo dato de mercado. */
.hero-mini-chart-fallback {
  width:100%;
  align-content:center;
  justify-items:start;
  gap:10px;
}
.hero-mini-chart-fallback .hero-sparkline {
  display:block;
  width:100%;
  height:78px;
  margin-top:2px;
  overflow:visible;
}
.hero-mini-chart-fallback .hero-sparkline[hidden] { display:none; }
.hero-sparkline-grid {
  fill:none;
  stroke:rgba(136,168,204,.2);
  stroke-width:1;
  stroke-dasharray:2 5;
}
.hero-sparkline-path {
  fill:none;
  stroke:#3fe0b0;
  stroke-width:2.5;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.hero-sparkline-path.is-down { stroke:#ff8379; }
[data-theme="light"] .hero-sparkline-grid { stroke:rgba(54,92,132,.18); }

@media (max-width:820px) {
  .asset-hero .hero-action-row { --hero-mobile-control-size:42px !important; }
  .asset-hero .hero-action-row .hero-action { width:42px !important; min-width:42px !important; min-height:42px !important; border-radius:12px !important; }
  .asset-hero .hero-asset-search { height:42px !important; border-radius:12px !important; }
  .asset-hero .hero-asset-search input { height:40px !important; font-size:11px !important; }
  .asset-hero .hero-asset-search > .hero-action-icon { width:16px !important; height:16px !important; margin-left:9px !important; flex-basis:16px !important; }
  .asset-hero .hero-asset-search button { width:30px !important; height:30px !important; min-width:30px !important; flex-basis:30px !important; margin-right:5px !important; border-radius:9px !important; }
  .asset-stats-new { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:6px !important; margin-bottom:12px !important; }
  .asset-stat-new { min-height:76px !important; padding:9px 10px !important; border-radius:12px !important; }
  .asset-stat-new .stat-head { flex-direction:row !important; align-items:center !important; gap:6px !important; font-size:8.5px !important; line-height:1.1 !important; }
  .asset-stat-new .stat-icon { width:25px !important; height:25px !important; flex-basis:25px !important; font-size:0 !important; }
  .asset-stat-new .stat-icon .bh-icon { width:14px !important; height:14px !important; }
  .asset-stat-new strong { margin-top:7px !important; font-size:16px !important; line-height:1 !important; }
}
@media (max-width:420px) {
  .asset-hero .hero-action-row { --hero-mobile-control-size:40px !important; }
  .asset-hero .hero-action-row .hero-action { width:40px !important; min-width:40px !important; min-height:40px !important; }
  .asset-hero .hero-asset-search { height:40px !important; }
  .asset-hero .hero-asset-search input { height:38px !important; }
  .asset-stat-new .stat-head { font-size:8px !important; }
  .asset-stat-new strong { font-size:15px !important; }
}

/* La cotización de cabecera es estable desde el primer render; si TradingView
   llega después, puede sustituirla sin dejar el precio pegado a las métricas. */
@media (min-width:821px) {
  .asset-hero .hero-quote {
    justify-content:center !important;
    padding-top:42px !important;
    padding-bottom:12px !important;
  }
  .asset-hero .hero-mini-chart-shell {
    min-height:178px !important;
  }
}

/* El aviso de lectura pública es contenido del hilo, no una capa flotante que
   tape mensajes o parezca un segundo composer. */
.public-read-gate,
.forum-public-gate {
  display:block !important;
  position:relative !important;
  top:auto !important;
  z-index:1 !important;
  margin:8px 0 14px !important;
  padding:12px 14px 13px !important;
  border-left-width:3px !important;
  border-radius:12px !important;
  line-height:1.4 !important;
}
.public-read-gate strong,
.forum-public-gate strong { display:block !important; margin-bottom:3px !important; }
.public-read-gate .gate-copy,
.forum-public-gate .gate-copy { display:block; color:var(--muted); font-size:12px; }
.public-read-gate a,
.forum-public-gate a { margin-top:8px !important; }
@media (max-width:680px) {
  .public-read-gate,
  .forum-public-gate { margin:4px 0 12px !important; padding:10px 12px 11px !important; }
  .public-read-gate .gate-copy,
  .forum-public-gate .gate-copy { font-size:11px; }
}

/* El desplegable del buscador debe quedar por encima de la ficha y conservar
   contraste explícito en claro; algunas capas de la ficha crean contextos de
   apilado propios. */
.asset-hero-shell:focus-within { z-index:200 !important; }
.asset-hero-shell:focus-within .hero-actions { z-index:2000 !important; }
.hero-asset-suggestions.open {
  z-index:3000 !important;
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.hero-asset-suggestions .hero-asset-suggestion {
  display:flex !important;
  align-items:center !important;
  position:relative !important;
  width:100% !important;
  overflow:visible !important;
  min-height:48px !important;
  padding:7px 9px !important;
  color:#eff5ff !important;
}
.hero-asset-suggestion-logo {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  overflow:hidden;
  flex:0 0 34px;
}
.hero-asset-suggestion > .bh-asset-logo {
  width:34px !important;
  height:34px !important;
  flex:0 0 34px !important;
}
.hero-asset-suggestion-logo .bh-asset-logo,
.hero-asset-suggestion-logo img {
  width:34px !important;
  height:34px !important;
}
.hero-asset-suggestion-copy {
  min-width:0;
  flex:1 1 auto;
  display:flex !important;
  flex-direction:column;
  gap:3px;
  justify-content:center;
  padding-left:10px;
}
.hero-asset-suggestions .hero-asset-suggestion > .bh-asset-copy {
  min-width:0 !important;
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:3px !important;
  padding-left:10px !important;
}
.hero-asset-suggestion-copy strong {
  display:block !important;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:inherit !important;
  font-size:12px !important;
  line-height:1.1;
}
.hero-asset-suggestion-copy small {
  display:block !important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#9eb5d0 !important;
  font-size:10px !important;
  line-height:1.1;
}
.hero-asset-suggestions .hero-asset-suggestion > .bh-asset-copy strong,
.hero-asset-suggestions .hero-asset-suggestion > .bh-asset-copy small {
  display:block !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.hero-asset-suggestions .hero-asset-suggestion > .bh-asset-side {
  display:none !important;
}
/* En pantallas muy estrechas algunas reglas legacy reducen el segundo hijo
   del botón a cero. El texto visible se pinta desde los datos de la opción,
   con una columna flex propia, para que nunca desaparezca junto al logo. */
.hero-asset-suggestions .hero-asset-suggestion::after {
  content:attr(data-label) "\A" attr(data-meta);
  display:block !important;
  position:absolute !important;
  left:60px !important;
  right:10px !important;
  top:50% !important;
  width:auto !important;
  max-width:none !important;
  transform:translateY(-50%);
  z-index:4;
  overflow:hidden;
  color:var(--bh-ink, #17304d) !important;
  font:800 12px/1.2 var(--bh-font-sans,system-ui,sans-serif) !important;
  text-align:left;
  white-space:pre-line;
  text-overflow:ellipsis;
}
.hero-asset-suggestions .hero-asset-suggestion > .hero-asset-suggestion-copy,
.hero-asset-suggestions .hero-asset-suggestion > .bh-asset-copy {
  display:none !important;
}
[data-theme="light"] .hero-asset-suggestions.open .hero-asset-suggestion::after {
  color:#17304d !important;
}
html[data-theme="dark"] .hero-asset-suggestions.open .hero-asset-suggestion::after,
body[data-theme="dark"] .hero-asset-suggestions.open .hero-asset-suggestion::after {
  color:#eff5ff !important;
}

/* La ficha carga estilos históricos que pueden convertir cada opción en un
   flex-item fijo de 30px en viewport estrecho. El texto sí está en el DOM,
   pero queda fuera de la caja visible. Restituimos aquí el layout completo y
   mostramos el copy real, sin depender de un pseudo-elemento. */
.hero-asset-suggestions.open .hero-asset-suggestion {
  display:flex !important;
  flex:1 1 auto !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  inline-size:100% !important;
  box-sizing:border-box !important;
}
.hero-asset-suggestions.open .hero-asset-suggestion > .hero-asset-suggestion-copy {
  display:flex !important;
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:5 !important;
}
.hero-asset-suggestions.open .hero-asset-suggestion::after {
  display:none !important;
  content:none !important;
}

/* El widget principal no debe apilar el precio y las acciones en la misma
   celda: cuando el fallback de cotización crece, termina invadiendo la banda
   de métricas. En escritorio usamos dos filas explícitas; en móvil las reglas
   existentes siguen llevando la ficha a una sola columna. */
@media (min-width:821px) {
  .asset-hero-shell .asset-hero {
    grid-template-rows:auto minmax(190px, auto) !important;
    align-items:stretch !important;
  }
  .asset-hero-shell .hero-identity {
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
  }
  .asset-hero-shell .hero-actions {
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:start !important;
  }
  .asset-hero-shell .hero-quote {
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:stretch !important;
    min-height:0 !important;
    padding:12px 0 0 42px !important;
    box-sizing:border-box !important;
    justify-content:center !important;
  }
  .asset-hero-shell .hero-mini-chart-shell,
  .asset-hero-shell .hero-mini-chart-fallback {
    min-height:160px !important;
  }
  .asset-hero-shell .hero-mini-chart-fallback {
    align-content:center !important;
    padding-right:24px !important;
  }
}
.hero-asset-suggestion-placeholder {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(31,128,255,.2);
  color:#8ec5ff;
  font-weight:900;
}
[data-theme="light"] .hero-asset-suggestions.open {
  color:#17304d !important;
  background:#fff !important;
  border-color:rgba(31,128,255,.28) !important;
  box-shadow:0 18px 48px rgba(55,86,117,.24), 0 2px 10px rgba(55,86,117,.12) !important;
}
[data-theme="light"] .hero-asset-suggestions.open .hero-asset-suggestion,
[data-theme="light"] .hero-asset-suggestions.open .hero-asset-suggestion strong {
  color:#17304d !important;
}
[data-theme="light"] .hero-asset-suggestions.open .hero-asset-suggestion small,
[data-theme="light"] .hero-asset-suggestions.open .suggestion-empty {
  color:#55708d !important;
}
[data-theme="light"] .hero-asset-suggestions.open .hero-asset-suggestion-copy small {
  color:#55708d !important;
}
[data-theme="light"] .hero-asset-suggestions.open .hero-asset-suggestion-placeholder {
  background:rgba(31,128,255,.12);
  color:#1767c7;
}
html[data-theme="light"] .hero-asset-search {
  color:#17304d !important;
  background:#fff !important;
  border-color:#b9cde2 !important;
}
html[data-theme="light"] .hero-asset-search input {
  color:#17304d !important;
  -webkit-text-fill-color:#17304d !important;
}
html[data-theme="light"] .hero-asset-search input::placeholder {
  color:#55708d !important;
  -webkit-text-fill-color:#55708d !important;
  opacity:1 !important;
}

/* Seis métricas en móvil: dos columnas estables por tres filas, sin dejar
   una última fila descolgada ni huecos asimétricos. */
@media (max-width:820px) {
  #fichaContent > .asset-stats-new,
  .asset-stats-new {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(72px,auto) !important;
    align-items:stretch !important;
    gap:0 !important;
    margin-bottom:12px !important;
  }
  .asset-stat-new {
    min-width:0 !important;
    min-height:72px !important;
    grid-column:auto !important;
    padding:9px 10px !important;
    border:0 !important;
    border-top:1px solid rgba(91,151,224,.14) !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .asset-stat-new:nth-child(-n+2) { border-top:0 !important; }
  .asset-stat-new .stat-head { min-width:0 !important; gap:6px !important; font-size:8.5px !important; }
  .asset-stat-new .stat-icon { width:26px !important; height:26px !important; flex:0 0 26px !important; font-size:0 !important; }
  .asset-stat-new .stat-icon .bh-icon { width:14px !important; height:14px !important; }
  .asset-stat-new strong { min-width:0 !important; margin-top:6px !important; overflow:hidden !important; text-overflow:ellipsis !important; font-size:clamp(14px,4.2vw,18px) !important; line-height:1 !important; }
}
@media (max-width:420px) {
  .asset-stats-new { grid-auto-rows:minmax(68px,auto) !important; }
  .asset-stat-new { min-height:68px !important; padding:8px 9px !important; }
  .asset-stat-new .stat-head { font-size:8px !important; }
  .asset-stat-new strong { font-size:15px !important; }
}

/* Community hero: superficie abierta, mapa visible y BolsaBot integrado. */
body[data-community-focus="true"] .comm-hero,
[data-theme="light"] body[data-community-focus="true"] .comm-hero {
  background:transparent !important;
  border:0 !important;
  border-color:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

body[data-community-focus="true"] .comm-hero::before {
  content:"" !important;
  inset:0 1% 0 34% !important;
  background:url('/assets/world-dots-thin.svg') center right / min(760px,100%) auto no-repeat !important;
  opacity:.28 !important;
  filter:invert(1) brightness(1.25) saturate(.72) !important;
  mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 100%) !important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 100%) !important;
}

[data-theme="light"] body[data-community-focus="true"] .comm-hero::before {
  opacity:.13 !important;
  filter:none !important;
}

body[data-community-focus="true"] .comm-hero-side {
  min-height:250px !important;
  grid-template-columns:minmax(190px,1fr) minmax(210px,232px) !important;
  gap:20px !important;
}

/* El estado en directo acompaña al título; no es una tarjeta independiente. */
body[data-community-focus="true"] .comm-live-badge {
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#ff737a !important;
  margin-bottom:16px !important;
}
body[data-community-focus="true"] .comm-live-badge span {
  width:8px;
  height:8px;
  box-shadow:0 0 0 4px rgba(255,88,99,.1),0 0 14px rgba(255,88,99,.65);
}

body[data-community-focus="true"] .comm-assistant-card {
  position:relative;
  align-self:center;
  overflow:hidden;
  width:100% !important;
  padding:17px 17px 16px !important;
  border:1px solid rgba(96,181,255,.34) !important;
  border-radius:26px 26px 26px 10px !important;
  background:linear-gradient(145deg,rgba(17,55,105,.82),rgba(5,18,40,.48)) !important;
  box-shadow:0 20px 44px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(18px) saturate(1.18);
  -webkit-backdrop-filter:blur(18px) saturate(1.18);
}

body[data-community-focus="true"] .comm-assistant-card::before {
  content:"";
  position:absolute;
  inset:15% auto 15% 0;
  width:3px;
  height:auto;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,#16d5ae,#2f8bff 72%,transparent);
  opacity:.95;
  pointer-events:none;
}

body[data-community-focus="true"] .comm-assistant-card > * { position:relative; z-index:1; }
body[data-community-focus="true"] .comm-assistant-card-head { display:flex; align-items:center; gap:9px; margin-bottom:14px; }
body[data-community-focus="true"] .comm-assistant-card-icon {
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(91,190,255,.34);
  border-radius:13px;
  color:#bfeeff;
  background:linear-gradient(145deg,rgba(31,128,255,.7),rgba(16,213,174,.28));
  box-shadow:0 8px 18px rgba(0,75,190,.25),inset 0 1px 0 rgba(255,255,255,.2);
}
body[data-community-focus="true"] .comm-assistant-card-icon .bh-icon { width:18px; height:18px; }
body[data-community-focus="true"] .comm-assistant-card-heading { display:flex; flex:1 1 auto; min-width:0; flex-direction:column; gap:3px; }
body[data-community-focus="true"] .comm-assistant-card-heading small { color:rgba(194,220,250,.62); font-size:8px; font-weight:900; letter-spacing:.12em; line-height:1; }
body[data-community-focus="true"] .comm-assistant-card-heading strong { margin:0 !important; color:#f4f8ff; font-size:14px; line-height:1.15; letter-spacing:-.015em; }
body[data-community-focus="true"] .comm-assistant-card-status { display:inline-flex; align-items:center; gap:4px; align-self:flex-start; white-space:nowrap; color:#65e4be; font-size:7px; font-weight:900; letter-spacing:.08em; }
body[data-community-focus="true"] .comm-assistant-card-status i { width:5px; height:5px; border-radius:50%; background:#16d5ae; box-shadow:0 0 8px rgba(22,213,174,.85); }
body[data-community-focus="true"] .comm-assistant-card p { max-width:190px; margin:0 0 16px; color:rgba(222,235,251,.72); font-size:12px; line-height:1.5; }
body[data-community-focus="true"] .comm-assistant-card .btn {
  min-height:46px;
  border-radius:999px !important;
  font-size:12px;
  justify-content:space-between !important;
  padding:0 13px 0 14px !important;
  box-shadow:0 10px 22px rgba(31,128,255,.26),inset 0 1px 0 rgba(255,255,255,.18);
}
body[data-community-focus="true"] .comm-assistant-card-arrow {
  width:27px;
  height:27px;
  flex:0 0 27px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:17px;
  font-weight:500;
  line-height:1;
  transition:transform .18s ease,background .18s ease;
}
body[data-community-focus="true"] .comm-assistant-card .btn:hover .comm-assistant-card-arrow { transform:translateX(2px); background:rgba(255,255,255,.22); }

[data-theme="light"] body[data-community-focus="true"] .comm-assistant-card {
  border-color:rgba(31,128,255,.25) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(226,240,255,.68)) !important;
  box-shadow:0 18px 42px rgba(31,88,156,.14),inset 0 1px 0 rgba(255,255,255,.84) !important;
}
[data-theme="light"] body[data-community-focus="true"] .comm-assistant-card-icon { color:#1768c9; background:linear-gradient(145deg,rgba(31,128,255,.18),rgba(16,213,174,.16)); border-color:rgba(31,128,255,.25); }
[data-theme="light"] body[data-community-focus="true"] .comm-assistant-card-heading strong { color:#17304d; }
[data-theme="light"] body[data-community-focus="true"] .comm-assistant-card p { color:#55708d; }
[data-theme="light"] body[data-community-focus="true"] .comm-assistant-card-arrow { color:#1269d6; border-color:rgba(31,128,255,.16); background:rgba(255,255,255,.62); }

@media (max-width:680px) {
  body[data-community-focus="true"] .comm-hero {
    padding:18px 0 20px !important;
  }
  body[data-community-focus="true"] .comm-live-badge { margin-bottom:12px !important; }
  body[data-community-focus="true"] .comm-hero::before {
    inset:22% -18% 0 4% !important;
    background-size:540px auto !important;
    opacity:.2 !important;
  }
}

/* Última capa del compositor compartido.
   Las dos páginas conservan estilos históricos con una fila propia para la
   vista previa. Cuando hay imagen, esta capa la convierte en un avatar de
   adjunto dentro de la misma fila que el texto: nunca en una banda superior. */
.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])),
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) {
  grid-template-rows:minmax(0,1fr) !important;
  align-items:center !important;
  min-height:48px !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-composer-preview,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-preview {
  grid-column:1 !important;
  grid-row:1 !important;
  width:44px !important;
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  margin:0 !important;
  padding:0 !important;
  align-self:center !important;
  justify-self:center !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-composer-preview img,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-preview img {
  width:44px !important;
  height:44px !important;
  max-width:44px !important;
  max-height:44px !important;
  object-fit:cover !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) .forum-attach,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) .composer-attach-btn {
  grid-column:1 !important;
  grid-row:1 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

.forum .forum-composer-field:has(.forum-composer-preview:not([hidden])) textarea,
body[data-community-focus="true"] .composer-field:has(.composer-preview:not([hidden])) #postBody {
  grid-column:2 !important;
  grid-row:1 !important;
  align-self:center !important;
}
