.trinity-public-feed {
  margin: 1rem 0;
  --trinity-bg: #0f172a;
  --trinity-bg-elevated: #111827;
  --trinity-border: #334155;
  --trinity-text: #e5e7eb;
  --trinity-text-muted: #94a3b8;
  --trinity-special: #14b8a6;
  --trinity-priority-high: #ef4444;
  --trinity-tag-bg: #0f3a3a;
  --trinity-tag-text: #5eead4;
}

.trinity-feed-list {
  list-style: none !important;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 1rem;
}

.trinity-public-feed .trinity-feed-list > li {
  list-style: none !important;
}

.trinity-public-feed .trinity-feed-list > li::marker {
  content: "" !important;
}

.trinity-feed-item {
  border: 1px solid var(--trinity-border);
  border-radius: 8px;
  padding: 1rem;
  background: var(--trinity-bg-elevated);
  color: var(--trinity-text);
}

.trinity-feed-item.is-special {
  border-color: var(--trinity-special);
}

.trinity-feed-item.priority-high {
  border-color: var(--trinity-priority-high);
}

.trinity-feed-item.priority-low {
  opacity: 0.9;
}

.trinity-feed-title {
  margin: 0 0 0.5rem;
  font-size: 1.125rem;
  line-height: 1.3;
}

.trinity-feed-content {
  margin-bottom: 0.75rem;
}

.trinity-feed-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  font-size: 0.9rem;
  color: var(--trinity-text-muted);
}

.trinity-feed-image {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 0.75rem;
}

.trinity-feed-tag {
  display: inline-block;
  padding: 0.15rem 0.45rem;
  border-radius: 999px;
  background: var(--trinity-tag-bg);
  color: var(--trinity-tag-text);
  font-size: 0.8rem;
}

.trinity-feed-error,
.trinity-feed-empty {
  border: 1px solid var(--trinity-border);
  border-radius: 8px;
  padding: 0.75rem 1rem;
  background: var(--trinity-bg);
  color: var(--trinity-text);
}

.trinity-feed-item audio {
  width: 100%;
  margin-top: 0.5rem;
  filter: invert(1) hue-rotate(180deg);
}
