/*
 * KOSTI English renewal - application integration overrides
 * Keep publisher assets intact; place JSP/dynamic-data adjustments here.
 */

/* Dynamic GNB active state must remain visible on the blue header. */
.site-header__gnb a.is-active,
.site-header__gnb a[aria-current="page"] {
  color: #fff;
}

/* Events list: normal item title 1 line/body 2 lines. */
.board-gallery__title a {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
}

.board-gallery__desc {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

/* Events list: first item title 2 lines/body 4 lines. */
.board-gallery__item--featured .board-gallery__title a {
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.board-gallery__item--featured .board-gallery__desc {
  -webkit-line-clamp: 4;
  line-clamp: 4;
}

/* Neutral background while a dynamic image falls back to the no-image asset. */
.card-event__thumb.is-image-empty,
.board-gallery__thumb.is-image-empty,
.board-pub__thumb--photo.is-image-empty,
.board-pub-view__cover.is-image-empty,
.board-view__image.is-image-empty {
  background: #fff;
}

.board-gallery__thumb.is-image-empty,
.board-pub__thumb--photo.is-image-empty,
.board-view__image.is-image-empty {
  border: 1px solid #e0e0e0;
}

/* Legacy main layout can constrain the renewed footer; keep its background full-bleed. */
.renewal-main .footer {
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
}

/* Match the renewed publishing table: legacy sub.css must not tint standard headers. */
.content-body .content-body__table th {
  background: transparent;
}

.content-body .content-body__table--highlight th {
  background: #e8f6ff;
}
