body { min-height: 100vh; }

.result-card { border-radius: 14px; }
.result-card .card-title { line-height: 1.25; }

.badge.bg-danger-subtle, .badge.bg-warning-subtle, .badge.bg-info-subtle,
.badge.bg-primary-subtle, .badge.bg-secondary-subtle, .badge.bg-success-subtle {
  border-width: 1px;
}

.chips-wrap { display: flex; flex-wrap: wrap; gap: .4rem; }
.chip {
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .25rem .5rem; border-radius: 999px;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.15);
  font-size: .83rem; text-decoration: none;
  word-break: break-all;
}
.chip:hover { background: rgba(255,255,255,.12); text-decoration: none; }
.chip-dot { width:.5rem; height:.5rem; border-radius:50%; background: currentColor; opacity:.6; }

/* ===== Archive polish ===== */
.bg-panel {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 14px;
  }
  
  .list-wrap { display: flex; flex-direction: column; gap: .5rem; }
  
  .list-card {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 12px;
    padding: .6rem .75rem;
    color: #e6e6e6;
    text-align: left;
    transition: transform .08s ease, border-color .08s ease, background .08s ease;
  }
  .list-card:hover { transform: translateY(-1px); background: rgba(255,255,255,.05); }
  .list-card.active, .list-card:focus {
    outline: none;
    border-color: rgba(0, 123, 255, .5);
    background: rgba(0, 123, 255, .08);
  }
  
  .list-title { font-weight: 600; font-size: .95rem; }
  .list-subtle { color: #9aa3ad; font-size: .8rem; }
  .list-meta { display:flex; gap:.5rem; align-items:center; }
  
  .line-clamp-2 {
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  
  .result-card .card-body { gap: .35rem; }
  .result-header { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; }
  .result-title  { margin: 0; font-size: 1.05rem; font-weight: 700; }
  .result-meta   { display:flex; flex-wrap:wrap; gap:.5rem; }
  
  .chips-wrap { display:flex; flex-wrap:wrap; gap:.35rem; }
  .chip {
    display:inline-flex; align-items:center; gap:.4rem;
    padding:.2rem .5rem; border-radius:999px;
    border:1px solid rgba(255,255,255,.15);
    background: rgba(255,255,255,.04);
    font-size:.75rem; color:#cfd6dd; text-decoration:none;
    max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .chip:hover { background: rgba(255,255,255,.08); }
  
  .link-raw a { word-break: break-all; }  

  /* Detailpanel sichtbar heller & gut lesbar */
.bg-panel {
    background: #1f242b;                     /* etwas heller als zuvor */
    border: 1px solid rgba(255,255,255,.12);
  }
  .bg-panel, .bg-panel .card-body {
    color: #f1f5f9;                           /* hellere Grundschrift */
  }
  .result-title { color: #ffffff; }           /* Titel wirklich weiß */
  
  /* Roh-URL klar erkennbar */
  .link-raw a {
    color: #9dd1ff;
    text-decoration: none;
  }
  .link-raw a:hover { text-decoration: underline; }
  
  /* Chips etwas heller */
  .chip {
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.22);
    color: #e9eef5;
  }
  .chip:hover { background: rgba(255,255,255,.16); }

  /* angenehmere Typografie für HTML-Phasenblöcke */
.prose p { margin-bottom: .5rem; line-height: 1.5; }
.prose ul { margin: .25rem 0 .75rem 1.1rem; }
.prose h6 { font-size: 1rem; margin: .5rem 0 .25rem; }

/* Karten-Header dezenter */
.card-header.bg-body-tertiary { border-bottom: 1px solid rgba(255,255,255,.06); }
