/**
 * @file
 * Results list + pager — shared by Search and Publikationen.
 * Matches Figma: fVGTGASNYw7QftFKLgfZZj, node 373-11325.
 *
 * Key values from Figma:
 *   - Outer content column gap between sections: 33px
 *   - Results list gap-y between items:          30px  → --search-result-gap
 *   - Item internal gap between elements:         4px  (node 373:11329)
 */

/* ── Result list wrapper ── */
.search-results {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* ── Publikationen results container ── */
.view-id-publikationen .view-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 1720px;
  align-items: center;
  gap: var(--spacing-800, 64px);
  margin-inline: auto;
  margin-block-start: var(--spacing-2000, 160px);
}

/* ── Separator line between results ── */
.view-id-publikationen .view-content .views-row {
  position: relative;
  width: 100%;
  max-width: 1428px;
}

.view-id-publikationen .view-content .views-row::after {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(-1 * var(--spacing-800, 64px) / 2 - 1px);
  width: 100vw;
  height: 2px;
  background: var(--ambience, #ebe6e1);
}

/* ── Results list container ── */
/* views-view-unformatted renders rows directly into .view-content (no wrapper div) */
.view-id-search .view-content {
  --search-result-gap: 30px;
  display: flex;
  flex-direction: column;
  gap: var(--search-result-gap);
  max-width: 1428px;
  width: 100%;
  margin-inline: auto;
  margin-block-start: var(--spacing-400, 32px);
}

/* ── Each row: 1428px wide + separator line below ── */
.view-id-search .view-content .views-row {
  width: 100%;
  padding-bottom: var(--search-result-gap);
  border-bottom: var(--border-width-regular, 2px) solid var(--ambience, #ebe6e1);
}

.view-id-search .view-content .views-row:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

/* No pager: add large bottom gap */
.view-id-search .view-content:last-child {
  margin-block-end: var(--spacing-2000, 160px);
}

/* ── Individual result: full width, 4px inner gap ── */
.node--view-mode-search-result {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-050, 4px);
  width: 100%;
}

/* ── Title ── */
.node--view-mode-search-result .node__title {
  margin: 0;
  font-family: var(--font-bosch-sans, 'Bosch Sans'), sans-serif;
  font-size: var(--text-size-button-button-text-m, 26px);
  font-weight: var(--font-weight-bold, 700);
  line-height: 1.3;
  letter-spacing: -0.312px;
  width: 100%;
}

.node--view-mode-search-result .node__title a {
  color: var(--attitude-600, #996096);
  text-decoration: none;
}

.node--view-mode-search-result .node__title a:hover {
  text-decoration: underline;
  color: var(--attitude-600, #996096);
}

/* ── Excerpt ── */
.node--view-mode-search-result .node__excerpt {
  font-size: var(--text-paragraph-s, 18px);
  font-weight: var(--font-weight-regular, 400);
  line-height: 1.5;
  letter-spacing: -0.18px;
  color: var(--trust, #550a2d);
  margin: 0;
  width: 100%;
}

/* Solr highlights matched terms with <strong> */
.node--view-mode-search-result .node__excerpt strong {
  font-weight: var(--font-weight-bold, 700);
}

/* ── Meta row (type · date · score) ── */
.node--view-mode-search-result .node__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--spacing-200, 16px);
  margin-top: var(--spacing-100, 8px);
}

/* ── Score (% badge + label text side by side) ── */
.node__meta-score {
  display: flex;
  align-items: center;
  gap: var(--spacing-100, 8px);
}

.node__meta-score-text {
  font-family: var(--font-bosch-sans, 'Bosch Sans'), sans-serif;
  font-size: var(--text-label-s);
  font-weight: var(--font-weight-regular, 400);
  color: var(--trust, #550a2d);
  white-space: nowrap;
}

/* ═══════════════════════════════════════════════════════
   PAGER
   ═══════════════════════════════════════════════════════ */

.view-id-publikationen .pager {
  padding: var(--spacing-1000, 80px) var(--spacing-300, 24px);
}

.view-id-publikationen .pager__items {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--spacing-100, 8px);
  list-style: none;
  margin: 0;
  padding: 0;
}

.view-id-publikationen .pager__item {
  display: flex;
  padding: 0;
}

/* ── Page number links ── */
.view-id-publikationen .pager__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 1000px;
  background: transparent;
  color: var(--trust, #550a2d);
  font-family: var(--font-bosch-sans, 'Bosch Sans'), sans-serif;
  font-weight: var(--font-weight-bold, 700);
  font-size: var(--text-size-label-s, 16px);
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.view-id-publikationen .pager__item a:hover {
  background: var(--ambience, #ebe6e1);
}

/* ── Active page ── */
.view-id-publikationen .pager__item.is-active a {
  background: var(--trust, #550a2d);
  color: var(--white, #ffffff);
  pointer-events: none;
}

/* ── Ellipsis ── */
.view-id-publikationen .pager__item--ellipsis {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: var(--trust, #550a2d);
  font-weight: var(--font-weight-bold, 700);
  font-size: var(--text-size-label-s, 16px);
}

/* ── Prev / Next — round ambience button with SVG arrow ── */
.view-id-publikationen .pager__item--previous a,
.view-id-publikationen .pager__item--next a {
  background-color: var(--ambience, #ebe6e1);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px 18px;
}

.view-id-publikationen .pager__item--previous a {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23550a2d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'/%3E%3C/svg%3E");
}

.view-id-publikationen .pager__item--next a {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23550a2d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E");
}

.view-id-publikationen .pager__item--previous a:hover,
.view-id-publikationen .pager__item--next a:hover {
  background-color: var(--ambience-500, #dbd4ce);
}

/* Hide text inside prev/next/first/last — arrow via background-image */
.view-id-publikationen .pager__item--previous a span,
.view-id-publikationen .pager__item--next a span,
.view-id-publikationen .pager__item--first a span,
.view-id-publikationen .pager__item--last a span {
  display: none;
}

/* ── First / Last — round ambience button with double SVG arrow ── */
.view-id-publikationen .pager__item--first a,
.view-id-publikationen .pager__item--last a {
  background-color: var(--ambience, #ebe6e1);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px 18px;
}

.view-id-publikationen .pager__item--first a {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23550a2d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='11 18 5 12 11 6'/%3E%3Cpolyline points='19 18 13 12 19 6'/%3E%3C/svg%3E");
}

.view-id-publikationen .pager__item--last a {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23550a2d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='13 18 19 12 13 6'/%3E%3Cpolyline points='5 18 11 12 5 6'/%3E%3C/svg%3E");
}

.view-id-publikationen .pager__item--first a:hover,
.view-id-publikationen .pager__item--last a:hover {
  background-color: var(--ambience-500, #dbd4ce);
}

/* ═══════════════════════════════════════════════════════
   RESPONSIVE — Publikationen content padding
   ═══════════════════════════════════════════════════════ */

/* Below 1820px: max-width no longer provides natural centering margins */
@media (max-width: 1819px) {
  .view-id-publikationen .view-content {
    padding-inline: var(--spacing-600, 48px);
  }
}

@media (max-width: 1199px) {
  .view-id-publikationen .view-content {
    padding-inline: var(--spacing-400, 32px);
    margin-block-start: var(--spacing-800, 64px);
  }
}

@media (max-width: 767px) {
  .view-id-publikationen .view-content {
    padding-inline: var(--spacing-300, 24px);
    margin-block-start: var(--spacing-600, 48px);
    gap: var(--spacing-600, 48px);
  }
}
