/* ── Print ───────────────────────────────────────────────── */
@media print {
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}

/* ── Footer ─────────────────────────────────────────────── */
.site-footer {
  background-color: #f8f9fa;
  border-top: 1px solid #dee2e6;
  color: #6c757d;
}

/* ── Mastodon feed ───────────────────────────────────────── */
.masto-feed-wrap {
  max-width: 560px;
}
.masto-profile-header {
  background: linear-gradient(135deg, #563acc 0%, #6364ff 100%);
  border-radius: 12px 12px 0 0;
  padding: 1.25rem 1.25rem 0.75rem;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.masto-profile-header img {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,0.6);
  object-fit: cover;
  flex-shrink: 0;
}
.masto-profile-header .masto-name {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2;
}
.masto-profile-header .masto-handle {
  font-size: 0.8rem;
  opacity: 0.8;
}
.masto-profile-header .masto-follow-btn {
  margin-left: auto;
  flex-shrink: 0;
  background: rgba(255,255,255,0.2);
  border: 1px solid rgba(255,255,255,0.5);
  color: #fff;
  border-radius: 20px;
  padding: 0.25rem 0.85rem;
  font-size: 0.8rem;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s;
}
.masto-profile-header .masto-follow-btn:hover {
  background: rgba(255,255,255,0.35);
  color: #fff;
}
.masto-posts-list {
  border: 1px solid #e0dff5;
  border-top: none;
  border-radius: 0 0 12px 12px;
  overflow: hidden;
  background: #fff;
}
.masto-post {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid #f0eff8;
}
.masto-post:last-child {
  border-bottom: none;
}
.masto-post-meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.masto-post-meta img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.masto-post-meta .masto-post-name {
  font-size: 0.85rem;
  font-weight: 600;
  color: #1c1a25;
  line-height: 1.2;
}
.masto-post-meta .masto-post-handle {
  font-size: 0.75rem;
  color: #888;
}
.masto-post-meta .masto-post-date {
  margin-left: auto;
  font-size: 0.75rem;
  color: #aaa;
  white-space: nowrap;
}
.masto-post-content {
  font-size: 0.875rem;
  color: #2d2b3a;
  line-height: 1.55;
}
.masto-post-content a {
  color: #6364ff;
  text-decoration: none;
}
.masto-post-content a:hover {
  text-decoration: underline;
}
.masto-post-images {
  display: flex;
  gap: 0.4rem;
  margin-top: 0.6rem;
  flex-wrap: wrap;
}
.masto-post-images img {
  height: 160px;
  flex: 1 1 45%;
  object-fit: cover;
  border-radius: 8px;
  max-width: 100%;
}
.masto-post-stats {
  display: flex;
  gap: 1.2rem;
  margin-top: 0.6rem;
  font-size: 0.78rem;
  color: #999;
}
.masto-post-stats span {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.masto-view-link {
  display: block;
  text-align: center;
  padding: 0.65rem;
  background: #f7f6ff;
  border-top: 1px solid #e0dff5;
  border-radius: 0 0 12px 12px;
  font-size: 0.8rem;
  color: #6364ff;
  text-decoration: none;
}
.masto-view-link:hover {
  background: #eeecff;
  color: #563acc;
}
