/**
 * @file search.css
 * Verid — Suchergebnisse
 *
 * HTML (Drupal core search module):
 *   ol.search-results.node-results
 *     li.search-result
 *       h3[.title] > a
 *       p.search-snippet-info > span.search-snippet
 *       p  (Typ · Autor · Datum)
 */

/* ─── Ergebnisliste ──────────────────────────────────── */

body ol.search-results,
body ul.search-results {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* ─── Einzelner Treffer ──────────────────────────────── */

body .search-result {
  padding-block: var(--verid-space-8);
  border-bottom: 1px solid var(--verid-color-border);
  list-style: none;
}

body .search-result:first-child {
  padding-block-start: var(--verid-space-4);
}

/* ─── Treffer-Titel ──────────────────────────────────── */

body .search-result h3 {
  font-family: var(--verid-font-display);
  font-size: var(--verid-text-xl);
  font-weight: 600;
  line-height: var(--verid-leading-snug);
  margin: 0 0 var(--verid-space-3) 0;
  padding: 0;
  border: none;
}

body .search-result h3 a {
  color: var(--verid-color-text);
  text-decoration: none;
  transition: color var(--verid-transition-fast);
}

body .search-result h3 a:hover {
  color: var(--verid-color-accent);
}

/* ─── Textauszug ─────────────────────────────────────── */

body .search-snippet-info {
  margin: 0 0 var(--verid-space-3) 0;
  padding: 0;
  font-size: var(--verid-text-base);
  line-height: var(--verid-leading-normal);
  color: var(--verid-color-text-secondary);
}

body .search-snippet {
  font-size: var(--verid-text-base);
  line-height: var(--verid-leading-normal);
  color: var(--verid-color-text-secondary);
}

/* Hervorgehobene Suchbegriffe */
body .search-snippet strong,
body .search-result h3 strong {
  color: var(--verid-color-text);
  font-weight: 600;
  background-color: var(--verid-color-accent-pale);
  border-radius: 2px;
  padding-inline: 2px;
}

/* ─── Meta-Info (Typ · Autor · Datum) ────────────────── */

body .search-result p:last-child {
  font-size: var(--verid-text-sm);
  color: var(--verid-color-text-muted);
  margin: 0;
  padding: 0;
}

/* ─── Suchformular (auf der Ergebnisseite) ───────────── */

body .search-form {
  margin-bottom: var(--verid-space-10);
}

/* Input + Button auf einer Zeile */
body .search-form form,
body .search-form .container-inline {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625rem;
}

body .search-form .form-item {
  margin: 0;
  flex: 1;
  min-width: 200px;
}

body .search-form .form-item label {
  display: none; /* Label ist implizit durch Placeholder klar */
}

body .search-form input[type="search"],
body .search-form input[type="text"] {
  width: 100%;
  padding: 0.5rem 1rem;
  font-size: var(--verid-text-base);
  font-family: var(--verid-font-body);
  background: var(--verid-color-surface);
  border: 1px solid var(--verid-color-border);
  border-radius: var(--verid-radius-full);
  color: var(--verid-color-text);
  transition: border-color var(--verid-transition-fast);
}

body .search-form input[type="search"]:focus,
body .search-form input[type="text"]:focus {
  outline: none;
  border-color: var(--verid-color-accent);
}

body .search-form .form-actions {
  margin: 0;
  flex-shrink: 0;
}

body .search-form input[type="submit"],
body .search-form button[type="submit"] {
  padding: 0.5rem 1.375rem;
  background: var(--verid-color-accent);
  color: #fff;
  border: none;
  border-radius: var(--verid-radius-full);
  font-family: var(--verid-font-body);
  font-size: var(--verid-text-sm);
  font-weight: 600;
  cursor: pointer;
  transition: background var(--verid-transition-fast);
  white-space: nowrap;
}

body .search-form input[type="submit"]:hover,
body .search-form button[type="submit"]:hover {
  background: var(--verid-color-accent-hover);
}

/* ─── "Keine Ergebnisse" / Trefferzahl ───────────────────── */

body .search-results-count {
  margin-bottom: var(--verid-space-6);
  font-size: var(--verid-text-sm);
  color: var(--verid-color-text-muted);
}

/* ═══════════════════════════════════════════════════════════
   VERID-SUCHERGEBNIS-LAYOUT (search-result.html.twig)
   ══════════════════════════════════════════════════════════ */

.verid-result {
  padding-block: var(--verid-space-6);
  border-bottom: 1px solid var(--verid-color-border-light);
  list-style: none;
}

.verid-result:first-child { padding-block-start: var(--verid-space-2); }

/* Header: Breadcrumb + Badge */
.verid-result__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.375rem;
}

.verid-result__topic-chip {
  display: inline-block;
  background: var(--verid-color-surface);
  border: 1px solid var(--verid-color-border-light);
  border-radius: 4px;
  padding: 0.1rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--verid-color-text-secondary);
}

.verid-result__badge {
  font-size: 0.7rem;
  font-weight: 700;
  color: var(--verid-color-accent);
  background: rgba(217, 79, 61, 0.08);
  border: 1px solid rgba(217, 79, 61, 0.2);
  border-radius: 6px;
  padding: 0.15rem 0.5rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  flex-shrink: 0;
}

/* Titel */
.verid-result__title {
  font-family: var(--verid-font-display);
  font-size: var(--verid-text-xl);
  font-weight: 600;
  line-height: var(--verid-leading-snug);
  margin: 0 0 var(--verid-space-2) 0;
  padding: 0;
  border: none;
}

.verid-result__title a {
  color: var(--verid-color-text);
  text-decoration: none;
  transition: color var(--verid-transition-fast);
}

.verid-result__title a:hover { color: var(--verid-color-accent); }

/* Snippet */
.verid-result__snippet {
  font-size: var(--verid-text-sm);
  color: var(--verid-color-text-secondary);
  line-height: var(--verid-leading-normal);
  margin-bottom: var(--verid-space-2);
}

/* Hervorhebung */
.verid-result__snippet strong,
.verid-result__title strong {
  color: #9b2d20;
  font-weight: 700;
  background: rgba(217, 79, 61, 0.10);
  border-radius: 2px;
  padding-inline: 1px;
}

/* Meta-Zeile */
.verid-result__meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  font-size: 0.775rem;
  color: var(--verid-color-text-muted);
}

.verid-result__sep { color: var(--verid-color-border); }

/* ─── Filter-Chips ───────────────────────────────────────── */

.verid-search-filters {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1.75rem;
}

.verid-filter-chip {
  display: inline-block;
  padding: 0.35rem 0.875rem;
  border-radius: 9999px;
  font-size: 0.8rem;
  font-weight: 500;
  cursor: pointer;
  border: 1px solid var(--verid-color-border);
  background: var(--verid-color-surface);
  color: var(--verid-color-text-secondary);
  transition: background 120ms, border-color 120ms, color 120ms;
  user-select: none;
}

.verid-filter-chip:hover {
  border-color: var(--verid-color-accent);
  color: var(--verid-color-accent);
}

.verid-filter-chip.is-active {
  background: var(--verid-color-accent);
  color: #fff;
  border-color: var(--verid-color-accent);
}

/* Ergebnis durch Filter ausgeblendet */
.verid-result.is-hidden { display: none; }
