/* Articles page: search + topic filters */
.news-search { margin: 8px 0 22px; padding: 18px 0 4px; border-top: 1px solid var(--bur); }
.news-search[hidden] { display: none; }
.ns-label { display: block; margin: 0 0 8px; font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); }
.ns-field { position: relative; display: flex; align-items: center; max-width: 560px; }
.ns-field input[type="search"] {
  font: inherit; font-size: 17px; width: 100%;
  padding: 12px 76px 12px 14px;
  background: #faf7f2; color: var(--ink);
  border: 1px solid var(--line-bur); border-radius: 2px;
  -webkit-appearance: none; appearance: none;
}
.ns-field input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.ns-field input[type="search"]:focus { outline: 2px solid var(--bur); outline-offset: 1px; border-color: var(--bur); }
.ns-field input::placeholder { color: rgba(94, 76, 73, 0.7); }
.ns-clear {
  position: absolute; right: 6px; top: 50%; transform: translateY(-50%);
  font: inherit; font-size: 14px; color: var(--bur); background: none; border: 0;
  padding: 8px 10px; cursor: pointer; text-decoration: underline; text-underline-offset: 3px;
}
.ns-clear[hidden] { display: none; }
.ns-topics { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; }
.ns-topic {
  font: inherit; font-size: 15px; line-height: 1.2; cursor: pointer;
  padding: 8px 14px; border-radius: 999px;
  background: transparent; color: var(--ink);
  border: 1px solid var(--line-bur);
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.ns-topic:hover { border-color: var(--bur); color: var(--bur); }
.ns-topic:focus-visible { outline: 2px solid var(--bur); outline-offset: 2px; }
.ns-topic[aria-pressed="true"] { background: var(--bur); border-color: var(--bur); color: #f7f3ec; }
.ns-count { margin: 16px 0 0; font-size: 15px; color: var(--muted); }
.ns-empty { margin: 8px 0 0; font-family: Newsreader, Georgia, serif; font-size: 22px; color: var(--ink); }
.ns-empty[hidden] { display: none; }
.index-list a.row.article[hidden] { display: none; }
@media (max-width: 640px) {
  .news-search { margin-top: 4px; }
  .ns-field { max-width: none; }
  .ns-field input[type="search"] { font-size: 16px; }
  .ns-topics {
    flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch;
    scrollbar-width: none; margin-left: -6vw; margin-right: -6vw; padding: 2px 6vw 6px;
  }
  .ns-topics::-webkit-scrollbar { display: none; }
  .ns-topic { flex: 0 0 auto; font-size: 15px; padding: 9px 14px; }
}
