/**
 * single-blog.css
 *
 * Dandiran WooCommerce Theme — Single Blog Post
 *
 * Layered on top of blog.css (shares the sidebar/widget rules from
 * there). Covers: post header/meta, featured image, table of
 * contents, entry content typography, and the native WP comments
 * template (comments.php). Mobile-first.
 *
 * The TOC's #anchor links rely on plain browser anchor scrolling
 * (no JS) — `scroll-behavior: smooth` + `scroll-margin-top` on the
 * headings account for the sticky mobile header.
 *
 * @version 1.0.0
 */

html {
  scroll-behavior: smooth;
}

.dnd-blog-single {
  padding: 24px 0 48px;
}

/* ==========================================================================
   Header / meta
   ========================================================================== */

.dnd-blog-single__header {
  margin-bottom: 16px;
}

.dnd-blog-single__title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--dnd-text);
  margin: 10px 0 12px;
}

.dnd-blog-single__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 13px;
  color: var(--dnd-muted);
}

.dnd-blog-single__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.dnd-blog-single__meta-item a {
  color: var(--dnd-muted);
  text-decoration: underline;
}

.dnd-blog-single__meta-item a:hover {
  color: var(--dnd-primary);
}

/* ==========================================================================
   Featured image
   ========================================================================== */

.dnd-blog-single__thumb {
  margin: 20px 0;
  border-radius: var(--dnd-radius-lg);
  overflow: hidden;
}

.dnd-blog-single__thumb img {
  width: 100%;
  height: auto;
  display: block;
}

/* ==========================================================================
   Table of contents
   ========================================================================== */

.dnd-blog-toc {
  background: var(--dnd-bg-soft);
  border: 1px solid var(--dnd-border);
  border-radius: var(--dnd-radius-lg);
  padding: 16px;
  margin-bottom: 24px;
}

.dnd-blog-toc__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--dnd-text);
  margin-bottom: 10px;
}

.dnd-blog-toc__list {
  list-style: none;
  counter-reset: dnd-toc;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.dnd-blog-toc__item a {
  counter-increment: dnd-toc;
  display: flex;
  gap: 8px;
  font-size: 13.5px;
  color: var(--dnd-text);
  text-decoration: none;
  padding: 4px 0;
}

.dnd-blog-toc__item a::before {
  content: counter(dnd-toc) ".";
  flex-shrink: 0;
  color: var(--dnd-primary);
  font-weight: 700;
}

.dnd-blog-toc__item a:hover {
  color: var(--dnd-primary);
}

.dnd-blog-toc__item--level-3 {
  padding-inline-start: 20px;
}

/* ==========================================================================
   Entry content
   ========================================================================== */

.dnd-blog-single__content {
  font-size: 15px;
  line-height: 2;
  color: var(--dnd-text);
}

.dnd-blog-single__content h2,
.dnd-blog-single__content h3 {
  scroll-margin-top: 76px;
  font-weight: 700;
  color: var(--dnd-text);
  margin: 28px 0 12px;
}

.dnd-blog-single__content h2 {
  font-size: 19px;
}

.dnd-blog-single__content h3 {
  font-size: 16px;
}

.dnd-blog-single__content p {
  margin-bottom: 16px;
}

.dnd-blog-single__content img {
  max-width: 100%;
  height: auto;
  border-radius: var(--dnd-radius-md);
  margin: 12px 0;
}

.dnd-blog-single__content ul,
.dnd-blog-single__content ol {
  margin: 0 0 16px;
  padding-inline-start: 22px;
}

.dnd-blog-single__content blockquote {
  margin: 20px 0;
  padding: 14px 16px;
  border-inline-start: 3px solid var(--dnd-primary);
  background: var(--dnd-primary-soft);
  border-radius: var(--dnd-radius-md);
  color: var(--dnd-text);
}

.dnd-blog-single__content a {
  color: var(--dnd-primary);
  text-decoration: underline;
}

.dnd-blog-single__pages {
  margin-top: 20px;
  font-size: 13px;
  color: var(--dnd-muted);
}

/* ==========================================================================
   Comments (comments.php)
   ========================================================================== */

.dnd-blog-comments-wrap {
  margin-top: 32px;
}

.dnd-comments__title {
  font-size: 17px;
  font-weight: 700;
  color: var(--dnd-text);
  margin-bottom: 16px;
}

.dnd-comments__list {
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dnd-comments__list .children {
  list-style: none;
  margin: 16px 0 0;
  padding-inline-start: 24px;
  border-inline-start: 2px solid var(--dnd-border);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dnd-comment {
  display: flex;
  gap: 12px;
}

.dnd-comment__avatar img {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: block;
}

.dnd-comment__body {
  flex: 1;
  min-width: 0;
  background: var(--dnd-bg-soft);
  border-radius: var(--dnd-radius-md);
  padding: 12px 14px;
}

.dnd-comment__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 6px;
}

.dnd-comment__author {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--dnd-text);
}

.dnd-comment__date {
  font-size: 11.5px;
  color: var(--dnd-muted);
}

.dnd-comment__text {
  font-size: 13.5px;
  line-height: 1.9;
  color: var(--dnd-text);
}

.dnd-comment__text p:last-child {
  margin-bottom: 0;
}

.dnd-comment__pending {
  font-size: 12px;
  color: var(--dnd-danger);
  margin-bottom: 8px;
}

.dnd-comment__reply {
  margin-top: 8px;
}

.dnd-comment__reply a {
  font-size: 12px;
  font-weight: 600;
  color: var(--dnd-primary);
  text-decoration: none;
}

.dnd-comments__closed {
  color: var(--dnd-muted);
  font-size: 13.5px;
  margin-bottom: 20px;
}

/* comment form */

.dnd-comment-form {
  background: var(--dnd-white);
  border: 1px solid var(--dnd-border);
  border-radius: var(--dnd-radius-lg);
  padding: 18px;
}

.dnd-comment-form #reply-title {
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 14px;
}

.dnd-comment-form__row {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.dnd-comment-form__field {
  margin-bottom: 14px;
}

.dnd-comment-form__field label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--dnd-text);
  margin-bottom: 6px;
}

.dnd-comment-form__field .required {
  color: var(--dnd-danger);
}

.dnd-comment-form__field .form-control {
  font-size: 13.5px;
}

.dnd-comment-form__submit.btn {
  background: var(--dnd-primary);
  color: var(--dnd-white);
  border: none;
  border-radius: var(--dnd-radius-md);
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 600;
}

.dnd-comments__pagination {
  margin-bottom: 20px;
}

/* ==========================================================================
   Tablet / Desktop
   ========================================================================== */

@media (min-width: 768px) {
  .dnd-comment-form__row {
    flex-direction: row;
    gap: 16px;
  }

  .dnd-comment-form__row .dnd-comment-form__field {
    flex: 1;
    margin-bottom: 0;
  }
}

@media (min-width: 992px) {
  .dnd-blog-single {
    padding: 32px 0 64px;
  }

  .dnd-blog-single__title {
    font-size: 30px;
  }

  .dnd-blog-single__content {
    font-size: 16px;
  }
}
