@import url("/admin/assets/css/denuncias.css");

/* --- Módulo denuncias: layout general --- */
.body-modulo-denuncias { background-color: #eef1f6; }

.navbar-denuncias-sgm {
  background: #fff; border: none; border-bottom: 3px solid #1a3f6c; margin-bottom: 0;
  min-height: 72px; box-shadow: 0 1px 4px rgba(26,63,108,.08); border-radius: 0;
}
.navbar-denuncias-sgm .navbar-brand.marca-denuncias { height: auto; padding: 10px 28px 10px 0; margin-left: 0; }
.marca-denuncias-logo { display:block; max-height:54px; width:auto; height:auto; }
.navbar-denuncias-sgm .navbar-nav > li > a { padding-top:24px; padding-bottom:24px; }
.navbar-denuncias-sgm .navbar-toggle { margin-top:19px; margin-bottom:19px; border-color:#1a3f6c; }
.navbar-denuncias-sgm .navbar-toggle .icon-bar { background-color:#1a3f6c; }
/* Solo escritorio: en móvil float:left rompe el stack (portal junta nav-links y cerrar sesión en una fila) */
@media (min-width: 768px) {
  .navbar-denuncias-sgm .navbar-nav.navbar-left { float: left; margin-left: 0; }
}
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links { position:relative; padding-left:20px; }
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links::before {
  content:''; position:absolute; left:0; top:50%; width:2px; height:18px; margin-top:-9px; background:#c5d0e0;
}
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li { position:relative; }
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li > a { margin-left:0; padding-left:16px; }
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li + li::before {
  content:''; position:absolute; left:0; top:50%; width:2px; height:18px; margin-top:-9px; background:#c5d0e0;
}
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li:not(.active) > a {
  color:#5a6a7a; font-weight:700; font-size:15px; letter-spacing:.02em; background:transparent;
}
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li:not(.active) > a:hover,
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li:not(.active) > a:focus { color:#1a3f6c; background:transparent; }
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li.active > a.active,
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li.active > a.active:hover,
.navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li.active > a.active:focus {
  color:#5a6a7a; font-weight:700; font-size:15px; background:transparent; text-decoration:underline;
  text-underline-offset: 4px; text-decoration-thickness:2px;
}
.navbar-denuncias-sgm .nav-usuario-denuncias > li > a { font-weight:500; color:#333; }
.navbar-denuncias-sgm .nav-usuario-denuncias > li > a:hover,
.navbar-denuncias-sgm .nav-usuario-denuncias > li > a:focus { color:#1a3f6c; background:transparent; }

.denuncias-page-head {
  background:#fff; border-bottom:1px solid #dce3ec; padding:16px 0; margin-bottom:20px;
  box-shadow:0 1px 0 rgba(255,255,255,.8);
}
.denuncias-titulo-pagina { margin:0; font-size:22px; font-weight:600; color:#1a3f6c; line-height:1.3; }
.denuncias-contenido-principal { padding-bottom: 32px; }

.denuncias-contenido-principal .table-responsive.tabla-denuncias-sgm {
  background:#fff; border:1px solid #c5d3e3; border-radius:4px;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  box-shadow:0 1px 3px rgba(26,63,108,.07);
}
.denuncias-contenido-principal .tabla-denuncias-sgm .table-denuncias-listado { margin-bottom:0; border-collapse:separate; border-spacing:0; }
.denuncias-contenido-principal .table-denuncias-listado > thead > tr > th {
  background:#1a3f6c; color:#fff; font-weight:600; font-size:13px; border-bottom:none;
  border-right:1px solid rgba(255,255,255,.12); padding:12px 10px; vertical-align:middle;
}
.denuncias-contenido-principal .table-denuncias-listado > thead > tr > th:last-child { border-right:none; }
.denuncias-contenido-principal .table-denuncias-listado > tbody > tr > td,
.denuncias-contenido-principal .table-denuncias-listado > tbody > tr > th {
  border-top-color:#e8edf3; padding:10px; vertical-align:middle;
}
.denuncias-contenido-principal .table-denuncias-listado > tbody > tr:hover > td,
.denuncias-contenido-principal .table-denuncias-listado > tbody > tr:hover > th { background:#f4f8fc; }

.denuncias-pie-tabla {
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:100%;
  box-sizing:border-box;
  margin-top:18px;
  margin-bottom:8px;
  padding:12px 15px;
  background:#fff;
  border:1px solid #dce3ec;
  border-radius:4px;
}
.denuncias-pie-tabla-paginacion {
  flex:1 1 auto;
  min-width:0;
  text-align:left;
}
.denuncias-listado-sin-denuncias-msg {
  margin:0; padding:4px 0; font-weight:700; color:#1a3f6c; font-size:14px; line-height:1.4;
}
/* margin-left:auto empuja Nueva al borde derecho sin offsets en px (portal Tus denuncias) */
.denuncias-pie-tabla-export {
  flex:0 0 auto;
  margin-left:auto;
}
.denuncias-pie-tabla-export form {
  margin:0;
}
/* Paginación en fila dentro del pie (evita floats BS3 apilados si el hueco es estrecho) */
.denuncias-pie-tabla .pagination.pagination-denuncias-sgm {
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:stretch;
  float:none;
  margin:0;
  padding-left:0;
}
.denuncias-pie-tabla .pagination.pagination-denuncias-sgm > li {
  display:flex;
  float:none;
}
.denuncias-pie-tabla .pagination.pagination-denuncias-sgm > li > a,
.denuncias-pie-tabla .pagination.pagination-denuncias-sgm > li > span {
  float:none;
  display:flex;
  align-items:center;
  justify-content:center;
}

.denuncias-paginacion-nav { display:inline-block; vertical-align:middle; }
.pagination.pagination-denuncias-sgm {
  margin:0; border-radius:6px; border:1px solid #c5d3e3; background:linear-gradient(180deg,#fff 0%,#f6f8fb 100%);
  box-shadow:0 1px 2px rgba(26,63,108,.06);
}
.pagination.pagination-denuncias-sgm > li > a,
.pagination.pagination-denuncias-sgm > li > span {
  padding:8px 14px; color:#1a3f6c; background:transparent; border:none; border-right:1px solid #e2e8f0; margin:0;
}
.pagination.pagination-denuncias-sgm > li:last-child > a,
.pagination.pagination-denuncias-sgm > li:last-child > span { border-right:none; }
.pagination.pagination-denuncias-sgm > li > a:hover,
.pagination.pagination-denuncias-sgm > li > a:focus { color:#fff; background:#2a5a94; }
.pagination.pagination-denuncias-sgm > .active > a,
.pagination.pagination-denuncias-sgm > .active > a:hover,
.pagination.pagination-denuncias-sgm > .active > a:focus { color:#fff; background:#1a3f6c; font-weight:700; }

.btn.btn-buscador-panel {
  background:#1a3f6c; border-color:#143252; color:#fff; font-weight:600; padding:8px 20px; border-radius:4px;
  box-shadow:0 1px 2px rgba(26,63,108,.2);
}
.btn.btn-buscador-panel:hover,
.btn.btn-buscador-panel:focus {
  background:#143252; border-color:#0f2840; color:#e8eef5;
}

.filaDenuncia { cursor:pointer; }
.filaAsegurado { cursor:pointer; }
.in-line { display:inline-block; margin:0; }
#cancelar { margin-right:10px; margin-left:10px; }
textarea { max-width:100%; height:100px !important; }
.link { cursor:pointer; color:#337ab7; text-decoration:none; }
.link:hover { text-decoration:underline; color:#23527c; }

/* Detalle */
.detalle-denuncia-wrap { padding-bottom:20px; }
form#actualizarDenuncia.detalle-denuncia-form,
form#actualizarAsegurado.detalle-denuncia-form,
form#nuevaDenuncia.detalle-denuncia-form,
form#registroAsegurado.detalle-denuncia-form,
form#loginPortalAsegurados.detalle-denuncia-form,
form#passwordRecoveryPortal.detalle-denuncia-form,
form#passwordChangePortal.detalle-denuncia-form,
form#reenviarEmailPortal.detalle-denuncia-form {
  background:transparent; border:none; border-radius:0; box-shadow:none; padding:0; margin-bottom:0;
}
.detalle-denuncia-wrap form#registroAsegurado.detalle-denuncia-form .registro-portal-acciones {
  margin-top:4px; padding-top:14px; border-top:1px solid #e8edf3;
}
.detalle-denuncia-wrap form#registroAsegurado.detalle-denuncia-form .registro-portal-acciones .btn-default {
  margin-left:10px;
}
/* Login, recuperar / nueva contraseña, reenviar verificación: pie de acciones */
.detalle-denuncia-wrap.login-portal-pagina .portal-login-acciones {
  margin-top:4px; padding-top:14px; border-top:1px solid #e8edf3;
}
.detalle-denuncia-wrap.login-portal-pagina .portal-login-acciones-fila {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  width:100%;
  box-sizing:border-box;
}
/* Mismo criterio que .denuncias-pie-tabla-export */
.detalle-denuncia-wrap.login-portal-pagina .portal-acciones-der {
  flex:0 0 auto;
  margin-left:auto;
}
.detalle-denuncia-wrap.login-portal-pagina .portal-acciones-der .btn.btn-default {
  padding:8px 20px;
  font-weight:600;
  border-radius:4px;
  line-height:1.42857143;
}
.detalle-denuncia-wrap form#loginPortalAsegurados.detalle-denuncia-form .login-portal-ayuda {
  margin:14px 0 0; font-size:14px; color:#4a5a6b;
}
.detalle-denuncia-wrap form#loginPortalAsegurados.detalle-denuncia-form .login-portal-ayuda a {
  font-weight:600;
}
/* Mensajes flash en cajón portal (login, etc.): cajón verde/rojo Bootstrap + ritmo */
.detalle-denuncia-wrap.login-portal-pagina .portal-mensaje-flash {
  margin:12px 0 0;
  border-radius:4px;
  font-size:14px;
  line-height:1.45;
}
/* Cajones: bajo .wrap para que bloques solo lectura fuera del <form> sigan viéndose igual */
.detalle-denuncia-wrap .detalle-denuncia-cajon {
  background:#fff; border:1px solid #dce3ec; border-radius:6px; box-shadow:0 1px 3px rgba(26,63,108,.08);
  padding:16px 18px 18px; margin-bottom:16px;
}
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura {
  border-color:#b8c9dc;
  border-left:4px solid #1a3f6c;
}
.detalle-denuncia-wrap .detalle-denuncia-solo-lectura-aviso {
  margin:0 0 14px; padding:10px 12px; font-size:13px; line-height:1.45;
  color:#4a5a6b; background:rgba(255,255,255,.65); border:1px solid #dce3ec; border-radius:4px;
}
.detalle-denuncia-wrap .detalle-denuncia-solo-lectura-aviso a { font-weight:600; }
.detalle-denuncia-wrap .detalle-seccion-titulo {
  margin-top:0; margin-bottom:12px; padding-bottom:8px; border-bottom:1px solid #c5d3e3;
  color:#1a3f6c; font-size:18px; font-weight:700;
}
.detalle-denuncia-wrap .detalle-denuncia-subtitulo {
  margin:0 0 12px; padding:0 0 8px; border-bottom:1px solid #dce3ec;
  color:#1a3f6c; font-size:15px; font-weight:700;
}
.detalle-denuncia-wrap .detalle-denuncia-cajon label {
  display:block; margin-bottom:2px; font-weight:700; color:#3f4b5b; font-size:12px; text-transform:uppercase;
}
.detalle-denuncia-wrap .detalle-denuncia-cajon span, .detalle-denuncia-wrap .detalle-denuncia-cajon p { color:#2f3a48; }
.detalle-denuncia-wrap .detalle-denuncia-form .table-responsive { border:1px solid #dce3ec; border-radius:4px; background:#fff; }
.detalle-denuncia-wrap .detalle-denuncia-form .table { margin-bottom:0; }
/* Rejilla de filas en detalle (alineado con admin denuncias.css: 8px entre filas) */
.detalle-denuncia-wrap .detalle-denuncia-form .row {
  margin-bottom: 8px;
}
.detalle-denuncia-wrap .detalle-denuncia-form .col-md-3,
.detalle-denuncia-wrap .detalle-denuncia-form .col-md-6,
.detalle-denuncia-wrap .detalle-denuncia-form .col-md-12,
.detalle-denuncia-wrap .detalle-denuncia-form .col-sm-3,
.detalle-denuncia-wrap .detalle-denuncia-form .col-sm-6,
.detalle-denuncia-wrap .detalle-denuncia-form .col-xs-6,
.detalle-denuncia-wrap .detalle-denuncia-form .col-xs-12 {
  margin-bottom: 8px;
}
/* Cajón solo lectura fuera del <form> (Nueva denuncia — datos del asegurado): mismo ritmo vertical */
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .row {
  margin-bottom: 8px;
}
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .col-md-3,
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .col-md-6,
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .col-md-12,
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .col-sm-6,
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .col-xs-6,
.detalle-denuncia-wrap .detalle-denuncia-cajon.detalle-denuncia-cajon-solo-lectura .col-xs-12 {
  margin-bottom: 8px;
}
.detalle-adjuntos-vacio { margin:0; color:#6a7789; }
/* Nueva denuncia: input file oculto + zona drag-and-drop + lista */
.detalle-denuncia-wrap .detalle-denuncia-cajon-adjuntos .nueva-denuncia-adjuntos-input-native {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-cabecera {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 4px;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-cabecera .detalle-seccion-titulo {
  margin-bottom: 0;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-badge {
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-dropzone {
  margin-top: 8px;
  padding: 20px 16px;
  text-align: center;
  cursor: pointer;
  border: 2px dashed #b8c5d6;
  border-radius: 8px;
  background: #fafbfc;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-dropzone:hover {
  border-color: #7a9bc4;
  background: #f4f8fc;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-dropzone:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(51, 122, 183, 0.35);
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-dropzone--activo {
  border-color: #337ab7;
  background: #eef6fc;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-dropzone-titulo {
  display: block;
  font-weight: 700;
  color: #1a3f6c;
  font-size: 15px;
  margin-bottom: 6px;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-dropzone-sub {
  display: block;
  font-size: 12px;
  color: #6a7789;
  line-height: 1.45;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-lista {
  margin-top: 12px;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-lista-ul {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #dce3ec;
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-fila {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding: 10px 12px;
  border-bottom: 1px solid #eef2f7;
  font-size: 13px;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-fila:last-child {
  border-bottom: 0;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-nombre {
  flex: 1 1 160px;
  min-width: 0;
  color: #2f3a48;
  word-break: break-word;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-meta {
  color: #6a7789;
  white-space: nowrap;
  font-size: 12px;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-quitar {
  padding-left: 0;
  padding-right: 0;
  margin-left: auto;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-limite-msg {
  margin: 0;
  min-height: 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-limite-msg--visible {
  margin: 12px 0 0;
  padding: 10px 12px;
  color: #a82315;
  background: #fdecea;
  border: 1px solid #f0b4ad;
  border-left: 4px solid #c9302c;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.detalle-denuncia-wrap .nueva-denuncia-adjuntos-limite-msg:empty:not(.nueva-denuncia-adjuntos-limite-msg--visible) {
  margin-top: 0;
  min-height: 0;
}
.denuncias-contenido-principal .nd-banner-borrador {
  margin-bottom: 16px;
}
.denuncias-contenido-principal .nd-banner-borrador-texto {
  margin-bottom: 10px;
}
.denuncias-contenido-principal .nd-banner-borrador-acciones {
  margin-bottom: 0;
}
.detalle-acciones { margin-top:8px; padding-top:12px; border-top:none; }

/* Profesional a cargo / DT (col-4) + equipo actuante (col-8); misma altura = divisor vertical completo */
.detalle-denuncia-wrap .fila-equipo-dt-y-jugadores {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.detalle-denuncia-wrap .fila-equipo-dt-y-jugadores > [class*="col-"] {
  float: none;
}
@media (min-width: 992px) {
  .detalle-denuncia-wrap .detalle-denuncia-col-profesional-a-cargo {
    border-right: 1px solid #dce3ec;
    padding-right: 18px;
  }
  .detalle-denuncia-wrap .detalle-denuncia-col-equipo-actuante {
    padding-left: 10px;
  }
}
@media (max-width: 991px) {
  .detalle-denuncia-wrap .detalle-denuncia-col-profesional-a-cargo {
    border-top: none;
    border-bottom: 1px solid #dce3ec;
    margin-bottom: 14px;
    padding-bottom: 12px;
    margin-top: 0;
    padding-top: 0;
  }
}
.detalle-denuncia-wrap .detalle-denuncia-equipo-actuante-toolbar {
  margin-bottom: 8px;
}
.detalle-denuncia-wrap .detalle-denuncia-equipo-actuante-toolbar #agregarMiembroDelEquipo {
  margin-top: 16px;
}
/* Filas dinámicas: botón eliminar alineado con la base de los inputs */
.detalle-denuncia-wrap .detalle-denuncia-col-equipo-actuante .filaCuerpoProfesional {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin-bottom: 8px;
}
.detalle-denuncia-wrap .detalle-denuncia-col-equipo-actuante .filaCuerpoProfesional > [class*="col-"] {
  float: none;
}
.detalle-denuncia-wrap .detalle-denuncia-col-equipo-actuante .filaCuerpoProfesional .eliminarMiembroDelEquipo {
  margin-bottom: 0;
}
.detalle-denuncia-wrap .detalle-denuncia-col-profesional-a-cargo .detalle-denuncia-subtitulo {
  margin-top: 0;
}

@media (max-width: 767px) {
  .navbar-denuncias-sgm .navbar-nav.navbar-left,
  .navbar-denuncias-sgm .navbar-nav.navbar-right {
    float: none !important;
    width: 100%;
  }
  .navbar-denuncias-sgm { min-height: 0; }
  .navbar-denuncias-sgm .denuncias-navbar-header-movil { position:relative; float:none; text-align:center; }
  .navbar-denuncias-sgm .denuncias-navbar-header-movil .navbar-toggle {
    position:absolute; right:0; top:50%; margin-top:-17px; margin-bottom:0; float:none; z-index:2;
  }
  .navbar-denuncias-sgm .denuncias-navbar-header-movil .navbar-brand.marca-denuncias {
    float:none; display:inline-block; margin-left:auto; margin-right:auto; padding:8px 52px;
  }
  .navbar-denuncias-sgm .navbar-nav.nav-denuncias-links { padding-left:0; }
  .navbar-denuncias-sgm .navbar-nav.nav-denuncias-links::before,
  .navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li + li::before { display:none; }
  .navbar-denuncias-sgm .navbar-nav.nav-denuncias-links > li > a { padding-left:15px; }
  .navbar-denuncias-sgm .navbar-nav > li > a { padding-top:12px; padding-bottom:12px; }
  .navbar-denuncias-sgm .denuncias-nav-usuario-movil-nombre { display: none !important; }
  .navbar-denuncias-sgm .navbar-collapse .navbar-nav {
    margin-left: 0;
    margin-right: 0;
  }
  .navbar-denuncias-sgm .nav-usuario-denuncias > li > a.denuncias-nav-logout-movil {
    border-top: 1px solid #e8edf3;
    margin-top: 4px;
    padding-left: 15px;
    padding-right: 15px;
    font-weight: 400;
  }
  .navbar-denuncias-sgm .denuncias-nav-logout-movil:hover,
  .navbar-denuncias-sgm .denuncias-nav-logout-movil:focus {
    background-color: transparent !important;
  }
  /* Menú móvil desplegado: panel azul y textos blancos (misma regla que admin/denuncias.css) */
  .navbar-denuncias-sgm .navbar-collapse.collapse.in,
  .navbar-denuncias-sgm .navbar-collapse.collapsing {
    background-color: #1a3f6c;
    margin-left: -15px;
    margin-right: -15px;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 8px;
    border-top: 1px solid rgba(255, 255, 255, 0.22);
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .navbar-nav.nav-denuncias-links > li:not(.active) > a,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .navbar-nav.nav-denuncias-links > li:not(.active) > a {
    color: #fff !important;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .navbar-nav.nav-denuncias-links > li:not(.active) > a:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .navbar-nav.nav-denuncias-links > li:not(.active) > a:focus,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .navbar-nav.nav-denuncias-links > li:not(.active) > a:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .navbar-nav.nav-denuncias-links > li:not(.active) > a:focus {
    color: #fff !important;
    background-color: rgba(255, 255, 255, 0.1) !important;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .navbar-nav.nav-denuncias-links > li.active > a.active,
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .navbar-nav.nav-denuncias-links > li.active > a.active:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .navbar-nav.nav-denuncias-links > li.active > a.active:focus,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .navbar-nav.nav-denuncias-links > li.active > a.active,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .navbar-nav.nav-denuncias-links > li.active > a.active:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .navbar-nav.nav-denuncias-links > li.active > a.active:focus {
    color: #fff !important;
    background-color: transparent !important;
    text-decoration-color: rgba(255, 255, 255, 0.95);
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .nav-usuario-denuncias > li > a,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .nav-usuario-denuncias > li > a {
    color: #fff !important;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .nav-usuario-denuncias > li > a:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .nav-usuario-denuncias > li > a:focus,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .nav-usuario-denuncias > li > a:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .nav-usuario-denuncias > li > a:focus {
    color: #fff !important;
    background-color: rgba(255, 255, 255, 0.1) !important;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .nav-usuario-denuncias > li > a.denuncias-nav-logout-movil,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .nav-usuario-denuncias > li > a.denuncias-nav-logout-movil {
    border-top-color: rgba(255, 255, 255, 0.28);
    font-weight: 400;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .denuncias-nav-logout-movil,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .denuncias-nav-logout-movil {
    color: #fff !important;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .denuncias-nav-logout-movil:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .denuncias-nav-logout-movil:focus,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .denuncias-nav-logout-movil:hover,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .denuncias-nav-logout-movil:focus {
    color: #fff !important;
    background-color: rgba(255, 255, 255, 0.1) !important;
  }
  .navbar-denuncias-sgm .navbar-collapse.collapse.in .dropdown-menu > li > a,
  .navbar-denuncias-sgm .navbar-collapse.collapsing .dropdown-menu > li > a {
    color: #333;
  }
  .marca-denuncias-logo { max-height:42px; }
  .denuncias-titulo-pagina { font-size:18px; }
  /*
   * Admin/denuncias.css (importado arriba) fuerza en xs: flex-direction:column + export width:100%
   * para el Excel del backoffice. En el portal hace falta anularlo explícitamente.
   */
  .denuncias-pie-tabla {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
  }
  .denuncias-pie-tabla-paginacion {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
  }
  .denuncias-pie-tabla-export {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    margin-left: auto;
    align-self: center;
  }
  .denuncias-pie-tabla-export .btn-buscador-panel {
    white-space: nowrap;
  }
  .detalle-denuncia-wrap .detalle-denuncia-cajon { padding:12px 14px 14px; margin-bottom:12px; }
  .detalle-denuncia-wrap .detalle-seccion-titulo { font-size:16px; }
}

/* Datos del asegurado: acciones de cuenta (misma rejilla 4×col-sm-3; misma altura en sm+) */
.denuncias-acciones-cuenta-row {
  margin-left: -15px;
  margin-right: -15px;
}
.denuncias-acciones-cuenta-row > [class*="col-"] {
  padding-left: 15px;
  padding-right: 15px;
}
.accion-cuenta-bloque {
  margin-bottom: 12px;
  max-width: 100%;
  box-sizing: border-box;
}
.detalle-denuncia-form .accion-cuenta-estado-solicitud {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin-top: 8px;
  padding: 0 2px;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 600;
  color: #3d5a73;
  text-align: center;
}

.modal-correccion-datos-fila {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e8ecef;
}
.modal-correccion-datos-fila:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.modal-correccion-datos-fila .checkbox {
  margin-top: 0;
  margin-bottom: 4px;
}
.modal-correccion-datos-fila .modal-correccion-datos-actual {
  font-size: 12px;
  color: #5a6a7a;
  margin-bottom: 0;
  word-break: break-word;
}
.modal-correccion-datos-intro {
  margin-bottom: 16px;
  color: #3d5a73;
}

.modal-formulario-baja-content .modal-enlace-historial-solicitudes {
  display: block;
  width: 100%;
  text-align: left;
  padding: 0 !important;
  margin: 6px 0 0 0;
  font-size: 13px;
  font-weight: 600;
  color: #1a3f6c;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.modal-formulario-baja-content .modal-enlace-historial-solicitudes:hover {
  color: #0d2847;
  text-decoration: underline;
}
/* Sin anillo azul al hacer clic (Bootstrap .btn:focus). Teclado: focus-visible suave. */
.modal-formulario-baja-content .modal-enlace-historial-solicitudes:focus,
.modal-formulario-baja-content .modal-enlace-historial-solicitudes:active {
  color: #0d2847;
  text-decoration: underline;
  outline: none !important;
  box-shadow: none !important;
}
.modal-formulario-baja-content .modal-enlace-historial-solicitudes:focus-visible {
  outline: 2px solid rgba(26, 63, 108, 0.4) !important;
  outline-offset: 2px;
  box-shadow: none !important;
}

.modal-historial-panel {
  margin-bottom: 16px;
  border-color: #c5d3e3;
}
.modal-historial-panel .panel-heading {
  padding: 8px 12px;
  font-size: 13px;
  background: #f4f8fc;
  border-color: #c5d3e3;
}
.modal-historial-panel .panel-body {
  /* Alto mayor que el original de 260px: ahora cada ítem trae el hilo completo
     y el cuadro de respuesta, y todo scrollea acá (una sola zona). */
  max-height: min(50vh, 420px);
  overflow-y: auto;
  padding: 10px 12px;
}
.modal-historial-solicitud-item {
  padding: 10px 0;
  border-bottom: 1px solid #e8edf3;
}
.modal-historial-solicitud-item:first-child {
  padding-top: 2px;
}
.modal-historial-solicitud-item:last-child {
  border-bottom: none;
  padding-bottom: 2px;
}
.modal-historial-solicitud-meta {
  margin-bottom: 6px;
}
.modal-historial-solicitud-extra {
  margin-bottom: 4px;
}
.modal-historial-detalle {
  font-size: 12px;
  color: #3d4f5f;
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 140px;
  overflow-y: auto;
  padding: 8px;
  background: #fafbfc;
  border-radius: 3px;
  border: 1px solid #e8edf3;
}

.modal-historial-obs-asegurado {
  margin-top: 10px;
  padding: 8px 10px;
  background: #f0f6fb;
  border: 1px solid #c5d3e3;
  border-radius: 3px;
}
.modal-historial-obs-asegurado-titulo {
  margin: 0 0 6px 0;
  font-size: 12px;
  font-weight: 700;
  color: #1a3f6c;
}
.modal-historial-obs-asegurado-texto {
  font-size: 12px;
  color: #3d4f5f;
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 120px;
  overflow-y: auto;
}

/* Hilo de mensajes de una solicitud, dentro del modal “Solicitudes anteriores”.
   Sin scroll propio a propósito: scrollea el panel, no cada hilo. */
.hilo-asegurado {
  padding: 2px;
}
.hilo-asegurado-msg {
  padding: 7px 9px;
  margin-bottom: 6px;
  border-radius: 3px;
  border: 1px solid #e8edf3;
  background: #fafbfc;
}
.hilo-asegurado-msg:last-child {
  margin-bottom: 0;
}
/* El mensaje de la compañía se destaca, igual que las observaciones */
.hilo-asegurado-msg-sm {
  background: #f0f6fb;
  border-color: #c5d3e3;
}
.hilo-asegurado-cab {
  font-size: 11px;
  font-weight: 700;
  color: #1a3f6c;
  margin-bottom: 3px;
}
.hilo-asegurado-msg-propio .hilo-asegurado-cab {
  color: #5b6b7b;
}
.hilo-asegurado-cuerpo {
  font-size: 12px;
  color: #3d4f5f;
  white-space: pre-wrap;
  word-break: break-word;
}
.hilo-asegurado-responder {
  margin-top: 10px;
}
.hilo-asegurado-responder label {
  color: #1a3f6c;
  font-weight: 700;
  margin-bottom: 4px;
}
.hilo-asegurado-texto {
  font-size: 12px;
  resize: vertical;
}
.hilo-asegurado-acciones {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 6px;
}
.hilo-asegurado-msg-estado {
  flex: 1 1 auto;
  word-break: break-word;
}

/* Teléfono: lista “Solicitudes anteriores” en modales Datos — una sola zona con scroll y alto según viewport */
@media (max-width: 767px) {
  .modal-historial-panel .panel-body.modal-historial-solicitudes-lista {
    max-height: min(58vh, 380px);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
  }
  /* Sin segundo scroll dentro de cada ítem: todo sube/baja en el panel */
  .modal-historial-panel .modal-historial-detalle {
    max-height: none;
    overflow-y: visible;
  }
  .modal-historial-panel .modal-historial-obs-asegurado-texto {
    max-height: none;
    overflow-y: visible;
  }
}

@media (min-width: 768px) {
  .denuncias-acciones-cuenta-row {
    display: flex;
    flex-wrap: wrap;
  }
  .denuncias-acciones-cuenta-row > [class*="col-"] {
    display: flex;
    flex-direction: column;
  }
  .denuncias-acciones-cuenta-row .accion-cuenta-bloque {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
  }
  .denuncias-acciones-cuenta-row .accion-cuenta-input-group {
    flex: 1 1 auto;
    align-self: stretch;
    min-height: 100%;
  }
}
.denuncias-acciones-cuenta-row > [class*="col-"]:last-child .accion-cuenta-bloque {
  margin-bottom: 0;
}
.detalle-denuncia-form .accion-cuenta-input-group {
  display: flex;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  align-items: stretch;
}
.detalle-denuncia-form .accion-cuenta-input-group .input-group-btn {
  float: none;
  display: flex;
  align-items: stretch;
  vertical-align: top;
}
.detalle-denuncia-form .accion-cuenta-input-group-principal {
  flex: 1 1 0;
  min-width: 0;
  width: auto !important;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-self: stretch;
}
.detalle-denuncia-form .accion-cuenta-input-group > .input-group-btn:last-child {
  flex: 0 0 40px;
  width: 40px;
  min-width: 40px;
  max-width: 40px;
  align-self: stretch;
  flex-direction: column;
}
.detalle-denuncia-form .accion-cuenta-input-group-principal > .btn {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  line-height: 1.25;
  padding: 8px 8px;
  font-weight: 600;
  font-size: 13px;
  text-align: center;
  border-radius: 4px 0 0 4px;
  margin-right: 0;
}
.detalle-denuncia-form .accion-cuenta-input-group-principal > .btn.btn-buscador-panel:hover,
.detalle-denuncia-form .accion-cuenta-input-group-principal > .btn.btn-buscador-panel:focus,
.detalle-denuncia-form .accion-cuenta-input-group-principal > .btn.btn-buscador-panel:active {
  color: #e8eef5;
}
.detalle-denuncia-form .accion-cuenta-input-group > .input-group-btn:last-child > .accion-cuenta-info-addon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  flex: 1 1 auto;
  min-height: 0;
  padding: 6px 0;
  border-radius: 0 4px 4px 0;
  margin-left: -1px;
  color: #1a3f6c;
  border-color: #143252;
  z-index: 2;
  cursor: help;
  user-select: none;
}
/* Solo ayuda visual al pasar el mouse; no es un control activable (sin pointer ni foco de botón). */
.detalle-denuncia-form .accion-cuenta-input-group > .input-group-btn:last-child > .accion-cuenta-info-addon:hover {
  color: #fff;
  background-color: #2a5a94;
  border-color: #143252;
}
.detalle-denuncia-form .accion-cuenta-input-group > .input-group-btn:last-child > .accion-cuenta-info-addon:focus {
  outline: none;
  box-shadow: none;
}
.detalle-denuncia-form .accion-cuenta-info-addon .glyphicon {
  font-size: 15px;
  line-height: 1;
  vertical-align: middle;
}

/* input-group a ancho completo; no usar width:auto en .input-group-btn (rompe el reparto BS3 y achica el campo). */
#modalCambiarContrasena .modal-contrasena-input-group {
  width: 100%;
}
/* Misma altura que .form-control de Bootstrap 3 (34px); el padding extra del .btn la estiraba. */
#modalCambiarContrasena .modal-contrasena-input-group > .form-control {
  height: 34px;
}
#modalCambiarContrasena .modal-contrasena-input-group .input-group-btn {
  vertical-align: middle;
  width: 1%;
  white-space: nowrap;
}
#modalCambiarContrasena .modal-contrasena-input-group .input-group-btn .btn-toggle-password-modal {
  height: 34px;
  min-width: 38px;
  padding: 0 10px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
#modalCambiarContrasena .modal-contrasena-input-group .input-group-btn .btn-toggle-password-modal .glyphicon {
  font-size: 15px;
  line-height: 1;
  top: 0;
  vertical-align: middle;
}

/* --- Modal solicitud de baja (formulario tipo documento) --- */
.modal-formulario-baja-content .modal-body {
  padding-top: 18px;
}
.modal-formulario-baja-document {
  border: 1px solid #c5d3e3;
  border-radius: 4px;
  padding: 20px 22px 18px;
  background: #fafbfd;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}
.modal-formulario-baja-marca {
  font-size: 11px;
  letter-spacing: 0.22em;
  font-weight: 700;
  color: #1a3f6c;
  margin: 0 0 10px;
}
.modal-formulario-baja-titulo {
  font-size: 17px;
  font-weight: 700;
  color: #1a3f6c;
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid #1a3f6c;
}
.modal-formulario-baja-readonly {
  background-color: #eef2f7 !important;
  cursor: default;
  color: #333;
}
.modal-formulario-baja-nombre-static {
  min-height: 34px;
  padding: 7px 12px 7px 16px;
  margin-bottom: 0;
  border: 1px solid #dce3ec;
  border-radius: 4px;
  font-weight: 600;
}
.modal-formulario-baja-firma {
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid #dce3ec;
}
.modal-formulario-baja-firma-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5a6a7a;
  margin: 0 0 6px;
}
.modal-formulario-baja-firma-nombre {
  font-size: 18px;
  font-weight: 600;
  font-style: italic;
  color: #1a3f6c;
  margin: 0;
  padding-bottom: 4px;
  border-bottom: 1px solid #1a3f6c;
  display: inline-block;
  min-width: 280px;
  max-width: 100%;
}
.modal-formulario-baja-footer .modal-formulario-baja-botones {
  text-align: right;
}
#modalSolicitudBaja .modal-formulario-baja-fecha-group {
  width: 100%;
}
#modalSolicitudBaja .modal-formulario-baja-fecha-group > .form-control {
  height: 34px;
}
#modalSolicitudBaja .modal-formulario-baja-fecha-group .input-group-addon {
  cursor: pointer;
  background-color: #fff;
  border-color: #ccc;
}
#modalSolicitudBaja .modal-formulario-baja-fecha-group .input-group-addon:hover {
  background-color: #f4f8fc;
  border-color: #1a3f6c;
}