/*
 * SecurityTalent presentation fixes 1.0.0
 * Scoped fixes for EJM search controls, the EasySocial member rail and
 * text contrast in intentionally dark SecurityTalent panels.
 */

/* Easy Jobs Manager search: stable input dimensions and branded actions. */
.ejm_search_form .mod_easyjobsmanager_search form {
  width: 100%;
}

.ejm_search_form .form-control,
.ejm_search_form .form-select,
.ejm_search_form select,
.ejm_search_form .choices,
.ejm_search_form .choices__inner,
.ejm_search_form .chosen-container,
.ejm_search_form .chzn-container,
.ejm_search_form .select2-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.ejm_search_form .form-select,
.ejm_search_form select,
.ejm_search_form .choices__inner,
.ejm_search_form .chosen-single,
.ejm_search_form .chzn-single,
.ejm_search_form .select2-selection {
  min-height: 48px !important;
  border: 1px solid #b9d0df !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #173c45 !important;
}

.ejm_search_form .choices__item,
.ejm_search_form .chosen-single span,
.ejm_search_form .chzn-single span,
.ejm_search_form .select2-selection__rendered {
  color: #173c45 !important;
}

.ejm_search_form .ejm_search_form_actions_bar .btn-primary {
  min-height: 48px;
  border: 1px solid #08767b !important;
  border-radius: 12px !important;
  background: #0b8589 !important;
  color: #fff !important;
  font-weight: 800;
  box-shadow: 0 7px 18px rgba(11, 133, 137, .2) !important;
}

.ejm_search_form .ejm_search_form_actions_bar .btn-primary:hover,
.ejm_search_form .ejm_search_form_actions_bar .btn-primary:focus-visible {
  border-color: #123f43 !important;
  background: #123f43 !important;
  color: #fff !important;
}

.ejm_search_form .ejm_search_form_actions_bar .ejb-all {
  min-height: 48px;
  padding: .7rem 1rem;
  border: 1px solid #0b777b !important;
  border-radius: 12px !important;
  background: #fffdf9 !important;
  color: #0b6f75 !important;
  font-size: 1rem;
  font-weight: 800;
  box-shadow: none !important;
}

.ejm_search_form .ejm_search_form_actions_bar .ejb-all:hover,
.ejm_search_form .ejm_search_form_actions_bar .ejb-all:focus-visible {
  border-color: #0b6f75 !important;
  background: #e9f5f1 !important;
  color: #084f55 !important;
}

@media (max-width: 767.98px) {
  .ejm_search_form .mod_easyjobsmanager_search form > .row:not(.ejm_search_form_actions_bar) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .ejm_search_form .mod_easyjobsmanager_search form > .row:not(.ejm_search_form_actions_bar) > [class*="col"] {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    flex: 0 0 100% !important;
  }

  .ejm_search_form .ejm_search_form_actions_bar,
  .ejm_search_form .ejm_search_form_actions_bar > [class*="col"] {
    width: 100% !important;
    max-width: none !important;
  }

  .ejm_search_form .ejm_search_form_actions_bar > [class*="col"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .ejm_search_form .ejm_search_form_actions_bar .btn {
    width: 100% !important;
    margin: 0 !important;
    justify-content: center;
  }
}

/* Requested compact EasySocial profile-completion rail card. */
.st-es-member-rail-card,
.st-es-member-rail-card > .sp-module,
.st-es-member-rail-card .mod-es-profile-completeness {
  width: 208px !important;
  max-width: 100% !important;
  flex: 0 0 208px !important;
  box-sizing: border-box;
}

.st-es-member-rail-card {
  margin-inline: auto;
}

.st-es-member-rail-card .mod-es-profile-completeness,
.st-es-member-rail-card .mod-es-profile-completeness * {
  overflow-wrap: anywhere;
}

/*
 * High-contrast typography in dark SecurityTalent components.
 * These selectors are intentionally scoped; headings on light cards retain
 * the normal navy brand color.
 */
:is(
  .st-home-slide,
  .st-slide-inner,
  .st-hero,
  .st-trust-band,
  .st-news-hero,
  .st-news-hub-intro__copy,
  .st-news-preview-page__heading,
  .st-news-preview-gate,
  .st-kb-section-method,
  .st-guide-preview-header,
  .st-cert-collapsed-preview,
  .st-founding-final-cta
) {
  color: #f7fffe !important;
}

:is(
  .st-home-slide,
  .st-slide-inner,
  .st-hero,
  .st-trust-band,
  .st-news-hero,
  .st-news-hub-intro__copy,
  .st-news-preview-page__heading,
  .st-news-preview-gate,
  .st-kb-section-method,
  .st-guide-preview-header,
  .st-cert-collapsed-preview,
  .st-founding-final-cta
) :is(h1, h2, h3, h4, h5, h6, p, li, strong, b) {
  color: #f7fffe !important;
  text-shadow: 0 1px 2px rgba(0, 20, 28, .28);
}

:is(
  .st-home-slide,
  .st-hero,
  .st-news-hero,
  .st-news-hub-intro__copy,
  .st-news-preview-page__heading,
  .st-news-preview-gate,
  .st-kb-section-method,
  .st-guide-preview-header,
  .st-founding-final-cta
) a:not(.btn):not(.st-button):not(.st-news-button) {
  color: #b8fff5 !important;
}

:is(
  .st-home-slide,
  .st-hero,
  .st-news-hero,
  .st-news-hub-intro__copy,
  .st-news-preview-page__heading,
  .st-news-preview-gate,
  .st-kb-section-method,
  .st-guide-preview-header,
  .st-founding-final-cta
) a:not(.btn):not(.st-button):not(.st-news-button):hover {
  color: #fff2b5 !important;
}

/*
 * Cybersecurity news catalog pagination.
 * Nine cards remain available in the document for discovery, while one
 * manageable catalog page is presented at a time.
 */
.st-news-story-grid > .st-news-story-card[hidden] {
  display: none !important;
}

.st-news-story-listing {
  scroll-margin-top: 9rem;
}

.st-news-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .75rem;
  margin: 2rem auto 0;
  padding: 1rem 0 0;
  border-top: 1px solid rgba(7, 112, 117, .2);
}

.st-news-pagination__link,
.st-news-pagination__disabled,
.st-news-pagination__status {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border-radius: 999px;
  font-weight: 800;
  line-height: 1.2;
}

.st-news-pagination__link,
.st-news-pagination__disabled {
  min-width: 128px;
  gap: .55rem;
  padding: .75rem 1.15rem;
}

.st-news-pagination__link {
  border: 1px solid #08767b;
  background: #0b8589;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 7px 18px rgba(11, 133, 137, .17);
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.st-news-pagination__link:hover,
.st-news-pagination__link:focus-visible {
  border-color: #123f43;
  background: #123f43;
  color: #fff !important;
  transform: translateY(-1px);
}

.st-news-pagination__link:focus-visible {
  outline: 3px solid rgba(11, 133, 137, .28);
  outline-offset: 3px;
}

.st-news-pagination__disabled {
  border: 1px solid #c9d9d8;
  background: #f4f8f7;
  color: #789093;
  cursor: not-allowed;
}

.st-news-pagination__status {
  min-width: 132px;
  padding: .7rem 1rem;
  color: #123f43;
  background: #edf7f5;
}

.st-news-pagination__arrow {
  font-size: 1.15em;
  line-height: 1;
}

@media (max-width: 575.98px) {
  .st-news-pagination {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .st-news-pagination__link,
  .st-news-pagination__disabled {
    width: 100%;
    min-width: 0;
  }

  .st-news-pagination__status {
    grid-column: 1 / -1;
    grid-row: 1;
  }
}
