.blog-engage {
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid #E2DED6;
}
.blog-engage-label {
  font-family: ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #B4B2A9;
  margin-bottom: 0.75rem;
}
.blog-share-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
.blog-share-btn {
  font-family: ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.45rem 0.75rem;
  border: 1px solid #E2DED6;
  border-radius: 4px;
  background: #FAFAF8;
  color: #5C5B55;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  transition: border-color 0.15s, color 0.15s;
}
.blog-share-btn:hover {
  border-color: #7F77DD;
  color: #7F77DD;
  text-decoration: none;
}
.blog-comments-form label {
  display: block;
  font-size: 13px;
  color: #888780;
  margin-bottom: 0.35rem;
}
.blog-comments-form input,
.blog-comments-form textarea {
  width: 100%;
  font: inherit;
  font-size: 0.95rem;
  padding: 0.65rem 0.75rem;
  border: 1px solid #E2DED6;
  border-radius: 4px;
  background: #fff;
  color: #1A1A1A;
  margin-bottom: 0.75rem;
}
.blog-comments-form textarea {
  min-height: 5rem;
  resize: vertical;
  line-height: 1.55;
}
.blog-comments-form button {
  font-family: ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 4px;
  background: #1A1A1A;
  color: #FAFAF8;
  cursor: pointer;
}
.blog-comments-form button:hover { background: #333; }
.blog-comments-form button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.blog-engage-toast {
  font-size: 13px;
  color: #888780;
  margin-top: 0.75rem;
  min-height: 1.25rem;
}
.blog-comments-list {
  list-style: none;
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.blog-comment-item {
  padding: 0.85rem 0;
  border-bottom: 1px solid #E2DED6;
}
.blog-comment-item:first-child { border-top: 1px solid #E2DED6; }
.blog-comment-meta {
  font-family: ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #B4B2A9;
  margin-bottom: 0.35rem;
}
.blog-comment-body {
  font-size: 0.98rem;
  color: #333;
  line-height: 1.55;
  white-space: pre-wrap;
}
.blog-comment-owner-actions {
  margin-left: 0.35rem;
}
.blog-comment-owner-btn {
  font-family: ui-monospace, monospace;
  font-size: 9px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0;
  border: none;
  background: none;
  color: #7F77DD;
  cursor: pointer;
}
.blog-comment-owner-btn + .blog-comment-owner-btn {
  margin-left: 0.45rem;
}
.blog-comment-owner-btn:hover {
  text-decoration: underline;
}
.blog-comment-edit textarea {
  width: 100%;
  font: inherit;
  font-size: 0.95rem;
  padding: 0.65rem 0.75rem;
  border: 1px solid #E2DED6;
  border-radius: 4px;
  background: #fff;
  color: #1A1A1A;
  min-height: 4.5rem;
  resize: vertical;
  line-height: 1.55;
  margin-bottom: 0.5rem;
}
.blog-comment-edit-actions {
  display: flex;
  gap: 0.5rem;
}
.blog-comment-edit-actions button[type="submit"] {
  font-family: ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.4rem 0.75rem;
  border: none;
  border-radius: 4px;
  background: #1A1A1A;
  color: #FAFAF8;
  cursor: pointer;
}
.blog-comments-empty {
  font-size: 13px;
  color: #888780;
  margin-bottom: 0.75rem;
}
.blog-subscribe {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid #E2DED6;
}
.blog-subscribe-note {
  font-size: 13px;
  color: #888780;
  margin-bottom: 0.85rem;
  line-height: 1.55;
}
.blog-subscribe-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.blog-subscribe-row input[type="email"] {
  flex: 1 1 12rem;
  min-width: 0;
  font: inherit;
  font-size: 0.95rem;
  padding: 0.65rem 0.75rem;
  border: 1px solid #E2DED6;
  border-radius: 4px;
  background: #fff;
  color: #1A1A1A;
}
.blog-subscribe-row input[type="email"]:focus {
  outline: none;
  border-color: #7F77DD;
}
.blog-subscribe-row button[type="submit"] {
  font-family: ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.65rem 1rem;
  border: none;
  border-radius: 4px;
  background: #1A1A1A;
  color: #FAFAF8;
  cursor: pointer;
}
.blog-subscribe-row button[type="submit"]:hover:not(:disabled) { background: #333; }
.blog-subscribe-row button[type="submit"]:disabled { opacity: 0.5; cursor: wait; }
.blog-subscribe-status.success { color: #7F77DD; }
.blog-subscribe-status.error { color: #9a3b3b; }
