  .feed-section { background: var(--paper); padding-top: 48px; padding-bottom: 48px; }
  .feed-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
  .post-card {
    background: var(--bg); border: 1px solid var(--rule); border-radius: 3px;
    overflow: hidden; display: flex; flex-direction: column;
    transition: transform 0.2s, box-shadow 0.2s;
  }
  .post-card:hover { transform: translateY(-2px); box-shadow: 0 14px 30px -16px rgba(47,58,50,0.18); }
  .post-card .img { aspect-ratio: 1/1; background: linear-gradient(135deg, var(--accent-soft), var(--bg-soft)); }
  .post-card .img img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .post-card .body { padding: 22px; flex: 1; display: flex; flex-direction: column; }
  .post-card .channel {
    font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--accent-deep);
    margin-bottom: 10px;
  }
  .post-card p { color: var(--ink-soft); font-size: 14.5px; line-height: 1.65; margin: 0 0 14px; flex: 1; }
  .post-card .date { font-family: "Cormorant Garamond", serif; font-style: italic; color: var(--muted); font-size: 14px; }
  .feed-loading, .feed-empty { text-align: center; padding: 80px 24px; color: var(--ink-soft); }
  .feed-loading .spinner { width: 28px; height: 28px; border: 2px solid var(--rule); border-top-color: var(--accent); border-radius: 50%; margin: 0 auto 14px; animation: ylt-spin 0.8s linear infinite; }
  @keyframes ylt-spin { to { transform: rotate(360deg); } }
  @media (max-width: 960px) { .feed-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) { .feed-grid { grid-template-columns: 1fr; } }
