/* Feed pages (discover, profile): approved v2 timeline / profile cards, signed-out view. Wide-screen columns: shell.css. */
.ni-feed-main { display: flex; flex-direction: column; gap: 0.625rem; max-width: 40rem; margin-top: 1rem; }
.ni-feed-h { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 0 0.25rem 0.125rem; }
.ni-feed-h h1 { font-size: 1.25rem; margin: 0; }
.ni-seg { display: flex; background: var(--ni-color-seg); border-radius: 0.75rem; padding: 0.1875rem; font-size: 0.8125rem; font-weight: 600; color: var(--ni-color-text-secondary); }
.ni-seg a { padding: 0.375rem 0.875rem; border-radius: 0.5625rem; }
.ni-seg a[aria-current] { background: var(--ni-color-surface); color: var(--ni-color-text-primary); box-shadow: var(--ni-shadow-chip); }
.ni-feed-empty { margin: 0; padding: 2.5rem 1.5rem; text-align: center; color: var(--ni-color-text-secondary); }
.ni-feed-more { align-self: center; margin-top: 0.25rem; }

/* card: author row (avatar, name / @handle · time, source badge at the end), body, actions */
.ni-fc { padding: 0.875rem 1.125rem 0.25rem; }
.ni-fc-head { display: flex; align-items: center; gap: 0.625rem; }
/* One line: name, @handle, time (never wraps), source badge at the end. */
.ni-fc-head .ni-who { flex: 1 1 auto; min-width: 0; display: flex; align-items: baseline; gap: 0.375rem; font-size: 0.875rem; line-height: 1.35; white-space: nowrap; }
.ni-fc-head .ni-name { flex: none; max-width: 50%; overflow: hidden; text-overflow: ellipsis; }
.ni-fc-head .ni-meta { flex: 0 1 auto; min-width: 0; display: flex; align-items: center; }
.ni-fc-head .ni-meta a { flex: none; }
/* When narrow the @handle truncates; name and time stay whole. */
.ni-fc-head .ni-handle { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.ni-fc-head .ni-dot { flex: none; }
.ni-fc-head .ni-name:hover, .ni-fc-head .ni-meta a:hover { text-decoration: underline; }
.ni-fc-text { margin-top: 0.5rem; font-size: 0.96875rem; line-height: 1.6; }
.ni-fc-text.ni-body { gap: 0.625rem; }
.ni-fc-thumbs { display: flex; flex-wrap: wrap; gap: 0.375rem; }
.ni-fc-thumbs a { display: block; }
.ni-fc-thumbs img { display: block; width: 7.5rem; height: 7.5rem; object-fit: cover; border-radius: 0.75rem; background: var(--ni-color-surface-2); }
.ni-fc-text .ni-audio { padding: 0.625rem 0.75rem; }
.ni-fc-article { margin-top: 0.625rem; display: block; border: 1px solid var(--ni-color-border); border-radius: 1rem; overflow: hidden; }
.ni-fc-article:hover { border-color: var(--ni-color-secondary); }
/* Cover about as tall as the text block below it (~7.5rem: title + 2-line summary + facts). */
.ni-fc-article img { display: block; width: 100%; height: 7.5rem; object-fit: cover; }
.ni-fc-t { padding: 0.625rem 0.875rem 0.75rem; }
.ni-fc-kind { font-weight: 700; color: var(--ni-color-primary); }
.ni-fc-t h3 {
  margin: 0 0 0.25rem; font-size: 1.0625rem; line-height: 1.35; letter-spacing: -0.01em; overflow-wrap: anywhere;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ni-fc-t p {
  margin: 0; color: var(--ni-color-text-secondary); font-size: 0.875rem; line-height: 1.55;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ni-fc-rt { margin-top: 0.375rem; font-size: 0.75rem; color: var(--ni-color-muted); }
/* Source badge: icon + text; long localized labels end in an ellipsis. Phones: icon only. */
.ni-fc-src { display: inline-flex; align-items: center; gap: 0.3125rem; flex: 0 1 auto; max-width: 45%; min-width: 0; color: var(--ni-color-text-secondary); font-size: 0.75rem; white-space: nowrap; }
.ni-fc-src span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.ni-fc-src:hover { text-decoration: underline; }
.ni-fc-src img { flex: none; width: 0.875rem; height: 0.875rem; border-radius: 0.25rem; }
.ni-fc-actions { margin: 0.375rem -0.625rem 0; padding-top: 0; border-top: 0; }

/* avatars */
.ni-av-42 { width: 2.625rem; height: 2.625rem; font-size: 1.0625rem; }
.ni-av-80 { width: 5rem; height: 5rem; font-size: 2rem; }

/* profile card */
.ni-prof { overflow: hidden; }
.ni-prof-banner { height: 7.5rem; background: var(--ni-color-banner); }
.ni-prof-in { padding: 0 1.25rem 0.875rem; }
.ni-prof-ava { margin-top: -2.25rem; border: 4px solid var(--ni-color-surface); box-sizing: content-box; }
.ni-prof h1 { font-size: 1.3125rem; margin: 0.375rem 0 0; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.ni-prof-bio { margin: 0.375rem 0 0; font-size: 0.9375rem; overflow-wrap: anywhere; white-space: pre-line; }
.ni-prof-facts { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 0.375rem; color: var(--ni-color-text-secondary); font-size: 0.8125rem; }
.ni-prof-facts span { display: inline-flex; align-items: center; gap: 0.3125rem; }
.ni-prof-facts .ni-i { width: 0.9375rem; height: 0.9375rem; }
.ni-prof-stats { display: flex; gap: 0.5rem 1.375rem; flex-wrap: wrap; margin-top: 0.5rem; font-size: 0.875rem; color: var(--ni-color-text-secondary); }
.ni-prof-stats b { color: var(--ni-color-text-primary); font-size: 0.9375rem; }
.ni-tabs { display: flex; border-top: 1px solid var(--ni-color-border); padding: 0 0.625rem; }
.ni-tabs a { padding: 0.625rem 0.875rem; font-weight: 600; font-size: 0.875rem; color: var(--ni-color-text-secondary); border-bottom: 2px solid transparent; }
.ni-tabs a[aria-current] { color: var(--ni-color-text-primary); border-color: var(--ni-color-primary); }

/* header navigation (icon + label; icon only on phones) */
.ni-hdr-nav { display: inline-flex; align-items: center; gap: 0.375rem; height: 2rem; font-size: 0.875rem; font-weight: 600; color: var(--ni-color-text-secondary); padding: 0 0.5rem; border-radius: 0.5rem; }
.ni-hdr-nav .ni-i { width: 1.125rem; height: 1.125rem; }
.ni-hdr-nav:hover, .ni-hdr-nav[aria-current] { color: var(--ni-color-primary); }

@media (max-width: 47.99rem) {
  .ni-feed-main { gap: 0.375rem; margin-top: 0; }
  /* Long tab labels (es, nl, pl, el, kk …) wrap under the title instead of overflowing. */
  .ni-feed-h { padding: 0.625rem 1rem 0.25rem; flex-wrap: wrap; gap: 0.5rem; }
  .ni-seg a { padding: 0.375rem 0.625rem; }
  .ni-tabs { overflow-x: auto; }
  .ni-fc, .ni-prof, .ni-feed-empty { border-radius: 0; box-shadow: none; }
  .ni-fc { padding: 0.75rem 1rem 0.125rem; }
  .ni-av-42 { width: 2.5rem; height: 2.5rem; }
  .ni-fc-src { flex: none; padding: 0.25rem; margin: -0.25rem; }
  .ni-fc-src span { display: none; }
  .ni-fc-src img { width: 1rem; height: 1rem; }
  .ni-fc-article img { height: 7rem; }
  .ni-prof-banner { height: 5.5rem; }
  .ni-prof-in { padding: 0 1rem 0.75rem; }
  .ni-feed-more { margin-bottom: 0.5rem; }
}
/* Avatar + follow button share the row under the banner. */
.ni-prof-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 0.75rem; }
.ni-prof-row .ni-follow { margin-bottom: 0.25rem; }
