/* Year tabs for news list */
#newsTabs { --yt-accent: #f2752c; --yt-text: #6b7280; --yt-text-on: #111827; --yt-line: #e5e7eb; }

.yt-list { position: relative; display: flex; gap: .25rem; margin-bottom: 25px; border-bottom: 1px solid var(--yt-line); overflow-x: auto; scrollbar-width: none; }
.yt-list::-webkit-scrollbar { display: none; }

.yt-tab { flex: none; background: none; border: 0; cursor: pointer; padding: 14px 20px; font-size: 18px; font-weight: 600; color: var(--yt-text); transition: color .25s ease; }
.yt-tab:hover, .yt-tab[aria-selected="true"] { color: var(--yt-text-on); }
.yt-tab:focus-visible { outline: 2px solid var(--yt-accent); outline-offset: -4px; }

.yt-bar { position: absolute; left: 0; bottom: -1px; height: 3px; width: 0; background: var(--yt-accent); transition: transform .4s cubic-bezier(.65,.05,.36,1), width .4s cubic-bezier(.65,.05,.36,1); }

.yt-panel { display: none; }
.yt-panel.is-active { display: block; animation: ytIn .4s ease both; }
@keyframes ytIn { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
  .yt-bar, .yt-tab { transition: none; }
  .yt-panel.is-active { animation: none; }
}
