.noticias-admin,
.noticias-portada {
  max-width: 1280px;
  margin: 0 auto;
}

.contenido-noticia {
  min-height: 17rem;
  font-family: Consolas, "Courier New", monospace;
}

.noticias-listado-admin {
  max-height: 72vh;
  overflow-y: auto;
}

.noticias-cabecera {
  display: flex;
  align-items: center;
  padding: 1.75rem;
  color: #fff;
  background: linear-gradient(135deg, #245f98 0%, #2b6dad 55%, #458bc9 100%);
  border-radius: .75rem;
  box-shadow: 0 .5rem 1.25rem rgba(31, 74, 113, .18);
}

.noticias-eyebrow {
  display: block;
  margin-bottom: .4rem;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .85;
}

.noticia-card {
  border: 0;
  border-left: 4px solid #2b6dad;
  border-radius: .5rem;
  transition: transform .18s ease, box-shadow .18s ease;
}

.noticia-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 .65rem 1.5rem rgba(31, 74, 113, .13) !important;
}

.noticia-card.noticia-destacada {
  border-left-color: #f6c23e;
  background: #fffdf5;
}

.noticia-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  align-items: center;
  color: #6c757d;
  font-size: .875rem;
}

.noticia-categoria {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.noticia-contenido {
  line-height: 1.7;
  position: relative;
}

.noticia-contenido-resumido {
  max-height: 10.5rem;
  overflow: hidden;
}

.noticia-contenido-resumido::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 4rem;
  background: linear-gradient(rgba(255, 255, 255, 0), #fff);
}

.noticia-destacada .noticia-contenido-resumido::after {
  background: linear-gradient(rgba(255, 253, 245, 0), #fffdf5);
}

.noticia-contenido-expandido {
  max-height: none;
}

.noticia-contenido-expandido::after {
  display: none;
}

.noticia-leer-mas {
  font-weight: 600;
}

.noticia-contenido a {
  overflow-wrap: anywhere;
}

@media (max-width: 767.98px) {
  .noticias-admin,
  .noticias-portada {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .noticias-cabecera {
    align-items: stretch;
    flex-direction: column;
    gap: 1.25rem;
    padding: 1.25rem;
  }

  .noticia-card .card-body {
    padding: 1.25rem !important;
  }

  .acciones-noticia .btn {
    width: 100%;
    margin-right: 0 !important;
  }
}
