/**
 * Publications Portal page styles
 */

.publications-portal {
  margin: 64px 0;
}

.publications-portal__breadcrumb .breadcrumb {
  background: var(--color-white);
  padding-bottom: 32px;
}

@media (min-width: 767px) {
  .publications-portal__breadcrumb .breadcrumb {
    padding-top: 30px;
  }
}

.publications-portal__breadcrumb .breadcrumb ol {
  max-width: 1312px;
  margin-left: auto;
  margin-right: auto;
  padding: 16px 10px;
}

.publications-portal__breadcrumb .breadcrumb ol li:not(:first-child)::before {
  content: "/";
  color: var(--color-pink);
  font-size: var(--fs-md);
  font-weight: var(--fw-bold);
  margin: 0 10px;
}

.publications-portal__breadcrumb .breadcrumb ol li:first-child::before {
  background-color: var(--color-pink);
}

.publications-portal__breadcrumb .breadcrumb ol li .breadcrumb-link {
  color: var(--color-black);
}

@media (max-width: 767px) {
  .publications-portal__breadcrumb .breadcrumb ol li::before {
    display: none;
  }
  .publications-portal__breadcrumb .breadcrumb ol li:last-child::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url("../assets/images/global/chevron-left-icon-alt.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-right: 8px;
  }
}

.publications-portal__title h1 {
  font-size: var(--fs-headingxl);
  font-weight: var(--fw-normal);
  color: var(--color-gray-dark);
  line-height: 1.1;
  margin: 0;
  position: relative;
  padding-bottom: 16px;
  margin-bottom: 1rem;
}

.publications-portal__title h1::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 135px;
  height: 2px;
  background-color: var(--color-orange);
}

/* Intro text block */
.publications-portal__intro .base p {
  font-size: var(--fs-lg);
  margin-bottom: 56px;
  max-width: 54rem;
}

.publications-portal__intro p {
  font-size: var(--fs-md);
  font-weight: var(--fw-light);
  line-height: 1.5;
  color: var(--color-gray-dark);
  margin: 0;
}

/* Hide the default exposed form rendered within the view output */
.publications-portal__articles .views-exposed-form {
  display: none;
}

/* Search form styling */
.publications-portal__search {
  margin-bottom: 32px;
}

.publications-portal__search .views-exposed-form {
  position: relative;
  max-width: 54rem;
}

/* Visually hide label but keep accessible for screen readers */
.publications-portal__search .form-item label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.publications-portal__search .form-item {
  margin: 0;
}

.publications-portal__search .form-item input[type="text"],
.publications-portal__search .form-item input[type="search"] {
  width: 100%;
  padding: 1.5rem;
  font-size: var(--fs-xl);
  font-weight: var(--fw-light);
  color: var(--color-black);
  background-color: var(--color-white);
  border: 1px solid var(--color-light-gray-2);
  border-radius: 8px;
  outline: none;
  transition: border-color 0.2s ease;
}

.publications-portal__search .form-item input[type="text"]:focus,
.publications-portal__search .form-item input[type="search"]:focus {
  border-color: var(--color-purple);
}

.publications-portal__search .form-item input[type="text"]::placeholder,
.publications-portal__search .form-item input[type="search"]::placeholder {
  color: var(--color-gray-medium);
}

.publications-portal__search .form-actions {
  position: absolute;
  top: 22%;
  right: 4px;
  transform: translateY(-50%);
}

.publications-portal__search .form-actions .form-submit {
  width: 24px;
  height: 24px;
  color: transparent;
  background-color: transparent;
  background-image: url('../assets/images/global/search-icon-alt.svg');
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
  border: none;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.publications-portal__search .form-actions .form-submit:hover {
  opacity: 0.7;
}

.publications-portal__search .form-actions .form-submit:focus {
  outline: 2px solid var(--color-pink);
  outline-offset: 2px;
  border-radius: 4px;
}

.publications-portal__wrapper {
  display: flex;
  flex-direction: column;
}

/* Filters accordion wrapper */
.publications-portal__filters-accordion {
  width: 100%;
}

/* First views-row gets border-top via negation of adjacent sibling */
.publications-portal__articles .views-row:not(.views-row ~ .views-row) {
  border-top: 1px solid var(--color-light-gray-2);
  padding-top: 2rem;
}

.publications-portal__filters-toggle {
  font-size: var(--fs-headingxs);
  font-weight: var(--fw-normal);
  color: var(--color-gray-dark);
  line-height: 1.2;
  background-color: transparent;
  border: none;
  border-top: 1px solid var(--color-light-gray-2);
  border-bottom: 1px solid var(--color-light-gray-2);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 16px;
  margin-bottom: 24px;
  width: 100%;
}

.publications-portal__filters-toggle .ionis-icon {
  width: 32px;
  height: 32px;
  background-color: var(--color-purple);
  color: var(--color-white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.publications-portal__filters-toggle.active .ionis-icon {
  transform: rotate(180deg);
}

.publications-portal__filters {
  width: 100%;
  transition: max-height 0.3s ease, opacity 0.3s ease;
}

/* Mobile: filters hidden by default */
.publications-portal__filters.collapsed {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
}

.publications-portal__filters.expanded {
  opacity: 1;
}

.publications-portal__articles {
  width: 100%;
}

@media (min-width: 768px) {
  .publications-portal__wrapper {
    flex-direction: row;
    gap: 2rem;
  }

  .publications-portal__filters-accordion {
    width: 300px;
  }

  .publications-portal__filters {
    width: 100%;
  }

  .publications-portal__articles {
    width: calc(100% - 300px - 2rem);
  }

  /* Desktop: hide toggle button and always show filters */
  .publications-portal__filters-toggle {
    display: none;
  }

  .publications-portal__filters.collapsed,
  .publications-portal__filters.expanded {
    max-height: none;
    opacity: 1;
    overflow: visible;
  }
}

/* Generic listing filters reset block (used by both newsroom and publications) */
.listing-filters-reset-block {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  background-color: var(--color-light-pink);
  margin-bottom: 1rem;
}

.listing-filters-reset-block .filters-text {
  font-size: var(--fs-headingxsm);
  font-weight: var(--fw-normal);
  color: var(--color-text-neutral-default);
  line-height: 1.2;
}

.listing-filters-reset-block .clear-all-link {
  font-size: var(--fs-md);
  font-weight: var(--fw-normal);
  color: var(--color-purple);
  line-height: 1.5;
  text-decoration: none;
}

.listing-filters-reset-block .clear-all-link:hover {
  text-decoration: underline;
}

/* Facets styling for publications (reuse newsroom styles) */
.publications-portal .block-facet--checkbox {
  margin-bottom: 2rem;
  padding-left: 16px;
}

.publications-portal .block-facet--checkbox h3 {
  font-size: var(--fs-headingxsm);
  font-weight: var(--fw-bold);
  color: var(--color-text-neutral-default);
  line-height: 1.4;
}

.publications-portal .block-facet--checkbox ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.publications-portal .block-facet--checkbox .facet-item {
  margin-bottom: 4px;
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 8px 0;
}

.publications-portal .block-facet--checkbox .facet-item label {
  cursor: pointer;
}

.publications-portal .block-facet--checkbox .facet-item .facet-item__value {
  font-size: var(--fs-md);
  font-weight: var(--fw-bold);
  color: var(--color-gray-dark);
  line-height: 1.5;
}

.publications-portal .block-facet--checkbox .facet-item .facet-item__count {
  font-size: var(--fs-base);
  font-weight: var(--fw-light);
  color: var(--color-black);
  line-height: 1.5;
}

.publications-portal .block-facet--checkbox .facet-item .facet-item__count:before {
  content: " | ";
  display: inline-block;
  padding-right: 6px;
}

.publications-portal .block-facet--checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid var(--color-gray-dark);
  border-radius: 4px;
  background-color: white;
  cursor: pointer;
  position: relative;
}

.publications-portal .block-facet--checkbox input[type="checkbox"]:checked {
  background-color: var(--color-purple);
  border-color: var(--color-purple);
}

.publications-portal .block-facet--checkbox input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%) rotate(45deg);
  width: 5px;
  height: 10px;
  border: solid var(--color-white);
  border-width: 0 2px 2px 0;
}

.publications-portal__articles .views-row {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--color-light-gray-2);
}

@media (min-width: 768px) {
  .publications-portal__articles .views-row {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
  }
}

.publications-portal__results-count {
  margin-bottom: 1rem;
  font-style: normal;
  font-size: var(--fs-base);
  font-weight: var(--fw-light);
}

/* Pager styling for publications portal */
.publications-portal .pager ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
}

.publications-portal .pager ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.publications-portal .pager ul li a {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-white);
  color: var(--color-gray-dark);
  text-decoration: none;
  cursor: pointer;
  font-size: var(--fs-md);
  font-weight: var(--fw-bold);
  line-height: 1.5;
}

.publications-portal .pager ul li a:focus {
  outline: 1px solid var(--color-pink);
}

.publications-portal .pager ul li.is-active a {
  background-color: var(--color-dark-purple);
  color: var(--color-white);
}

.publications-portal .pager ul li.pager__item--first,
.publications-portal .pager ul li.pager__item--last {
  display: none;
}

.publications-portal .pager ul li.pager__item--previous span[aria-hidden="true"],
.publications-portal .pager ul li.pager__item--next span[aria-hidden="true"] {
  font-size: 0;
  color: transparent;
  width: 48px;
  height: 48px;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-size: 7px 12px;
  background-repeat: no-repeat;
  background-position: center;
}

.publications-portal .pager ul li.pager__item--previous span[aria-hidden="true"] {
  background-image: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 11.25C5.28906 11.25 5.10156 11.1797 4.96094 11.0391L0.460938 6.53906C0.15625 6.25781 0.15625 5.76562 0.460938 5.48438L4.96094 0.984375C5.24219 0.679688 5.73438 0.679688 6.01562 0.984375C6.32031 1.26562 6.32031 1.75781 6.01562 2.03906L2.05469 6L6.01562 9.98438C6.32031 10.2656 6.32031 10.7578 6.01562 11.0391C5.875 11.1797 5.6875 11.25 5.5 11.25Z" fill="%23A20067"/></svg>');
}

.publications-portal .pager ul li.pager__item--next span[aria-hidden="true"] {
  background-image: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 11.25C1.28906 11.25 1.10156 11.1797 0.960938 11.0391C0.65625 10.7578 0.65625 10.2656 0.960938 9.98438L4.92188 6L0.960938 2.03906C0.65625 1.75781 0.65625 1.26562 0.960938 0.984375C1.24219 0.679688 1.73438 0.679688 2.01562 0.984375L6.51562 5.48438C6.82031 5.76562 6.82031 6.25781 6.51562 6.53906L2.01562 11.0391C1.875 11.1797 1.6875 11.25 1.5 11.25Z" fill="%23A20067"/></svg>');
}

/**
 * Publication card styles (featured-secondary view mode)
 */
.publication-card {
  display: flex;
  flex-direction: column;
}

.publication-card__content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.publication-card__eyebrow {
  font-size: var(--fs-eyebrow);
  font-weight: var(--fw-bold);
  line-height: 1.5;
  text-transform: uppercase;
  color: var(--color-pink);
}

.publication-card__eyebrow a {
  color: inherit;
  text-decoration: none;
}

.publication-card__title {
  font-size: var(--fs-headingxsm);
  font-weight: var(--fw-medium);
  line-height: 1.2;
  color: var(--color-gray-dark);
  margin: 0;
}

.publication-card__meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--fs-md);
  color: var(--color-black);
}

.publication-card__icon {
  color: var(--color-purple);
  flex-shrink: 0;
}

.publication-card__meta-label {
  font-weight: var(--fw-bold);
  white-space: nowrap;
}

.publication-card__meta-value {
  font-weight: var(--fw-light);
}

/* Remove default field wrapper margins */
.publication-card__meta-value .field {
  display: inline;
}

.publication-card__meta-value .field__item {
  display: inline;
}

.publication-card__meta-value .field__items {
  display: inline;
}

/* Comma separate multiple tags */
.publication-card__meta--tags .publication-card__meta-value .field__item:not(:last-child)::after {
  content: ", ";
}

.publication-card__body .base p {
  font-size: var(--fs-md);
  line-height: 1.5;
  color: var(--color-black);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-weight: var(--fw-light);
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
}

.publication-card__resources {
  background-color: var(--color-gray-tint);
  border-radius: 1rem;
  padding: 1rem;
  margin-top: 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.publication-card__links a.publication-card__resource-link,
.publication-card__files a.publication-card__resource-link{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--color-purple);
  text-decoration: none;
  font-size: var(--fs-md);
  font-weight: var(--fw-bold);
  line-height: 1.5;
  transition: color 0.2s ease;
}

.publication-card__resource-link:hover {
  text-decoration: underline;
}

.publication-card__resource-text {
  word-break: break-word;
}

.publication-card__resource-icon {
  flex-shrink: 0;
  color: var(--color-purple);
}

/* Links and files always stack vertically */
.publication-card__links,
.publication-card__files {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
