/* ==========================================================================
   Main — utilities & overrides (top of the cascade for theme tweaks)
   ========================================================================== */

.is-hidden { display: none !important; }
.is-only-mobile { display: none; }
@media (max-width: 768px) { .is-only-mobile { display: block; } .is-only-desktop { display: none; } }

/* Body without hero gets default top spacing if needed */
body:not(.has-hero) .site-main > section:first-child {
    /* keeps consistent rhythm when first block isn't full-bleed */
}

/* Comments */
.comments-area { margin-top: 60px; }
.comments-area__title { margin-bottom: 24px; }
.comment-list { list-style: none; padding: 0; margin: 0 0 32px; }
.comment-list .children { list-style: none; padding-left: 28px; }
.comment-body {
    padding: 20px;
    border: 1px solid var(--color-line);
    border-radius: var(--radius);
    margin-bottom: 16px;
}
.comment-meta { display: flex; gap: 12px; align-items: center; margin-bottom: 10px; }
.comment-author { font-size: .9rem; color: var(--color-fg-muted); }
.comment-author .fn { color: var(--color-fg); display: block; font-size: 1rem; }

.comment-form {
    display: grid;
    gap: 14px;
    margin-top: 24px;
}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid var(--color-line);
    border-radius: var(--radius-sm);
    background: #fff;
}
.comment-form textarea { min-height: 140px; }
