.comment-form-modfarm-spoiler {
    margin: .75rem 0;
    font-size: .925em;
}

.comment-form-modfarm-spoiler label {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    cursor: pointer;
}

.mfc-comments {
	--mfc-link-color: var(--mf-link-color, #0066cc);
    box-sizing: border-box;
    width: min(100%, 50rem);
    margin: 0 auto;
    padding: 2.125rem 1.5rem 2.75rem;
    color: #111315;
    background: #fff;
}

.mfc-comments-header,
.mfc-comment-meta,
.mfc-comment-actions,
.mfc-comments-tabs {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.mfc-comments-title {
    display: flex;
    align-items: baseline;
    gap: .5rem;
    margin: 0 0 1.125rem;
    color: #111315;
    font-size: 1.5rem;
    text-transform: uppercase;
}

.mfc-comments-title span {
    color: #9ca3af;
    font-size: 1.125rem;
    font-weight: 500;
}

.mfc-comment-form-wrap {
    margin: 0 0 1.625rem;
}

.mfc-comments #respond {
    box-sizing: border-box;
    margin: 0 0 1.625rem;
    border: 1px solid #d9dde3;
    border-radius: .375rem;
    padding: 1.125rem;
    color: #111315;
    background: #fff;
}

.mfc-comment > #respond {
    margin: 1rem 0 .25rem;
}

.mfc-comments #respond form {
    margin: 0;
}

.mfc-comments #respond .comment-reply-title {
    margin: 0 0 .75rem;
    color: #111315;
    font-size: 1.125rem;
}

.mfc-comments #respond .logged-in-as {
    margin: 0 0 .625rem;
    color: #6b7280;
    font-size: .875rem;
}

.mfc-comments #respond .logged-in-as a,
.mfc-comments #respond .logged-in-as a:visited {
    color: var(--mfc-link-color);
}

.mfc-comments #respond .comment-form-comment {
    margin: 0 0 .875rem;
}

.mfc-comments #respond textarea,
.mfc-comments #respond input[type="text"],
.mfc-comments #respond input[type="email"],
.mfc-comments #respond input[type="url"] {
    box-sizing: border-box;
    max-width: 100%;
    width: 100%;
}

.mfc-comments #respond textarea {
    min-height: 7.375rem;
    border: 0;
    padding: 0;
    box-shadow: none;
    color: #111315;
    background: #fff;
    font-size: 1.0625rem;
    line-height: 1.5;
    outline: none;
    resize: vertical;
}

.mfc-comments #respond textarea::placeholder {
    color: #9ca3af;
}

.mfc-comments #respond .form-submit {
    margin-bottom: 0;
}

.mfc-comments #respond .submit {
    border: 0;
    border-radius: 999px;
    padding: .625rem 1.125rem;
    color: #111315;
    background: linear-gradient(135deg, #ffd34a, #ff8a1f 58%, #f25a24);
    font-weight: 800;
    cursor: pointer;
}

.mfc-comments #cancel-comment-reply-link,
.mfc-comments #cancel-comment-reply-link:visited {
    display: inline-flex;
    margin-left: .5rem;
    border: 1px solid #d9dde3;
    border-radius: .25rem;
    padding: .3rem .55rem;
    color: var(--mfc-link-color);
    font-size: .75rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    vertical-align: middle;
}

.mfc-comments #cancel-comment-reply-link:hover,
.mfc-comments #cancel-comment-reply-link:focus {
    border-color: var(--mfc-link-color);
    color: var(--mfc-link-color);
}

.mfc-comments-tabs {
    gap: 1.75rem;
    margin: 0 0 1.125rem;
    border-bottom: 1px solid #d9dde3;
}

.mfc-comments-tabs a {
    border: 0;
    border-bottom: 3px solid transparent;
    margin: 0;
    padding: 0 0 .75rem;
    color: var(--mfc-link-color);
    background: transparent;
    font: inherit;
    font-size: 1rem;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    opacity: .65;
}

.mfc-comments-tabs a[aria-current="true"] {
    border-bottom-color: var(--mfc-link-color);
    color: var(--mfc-link-color);
    opacity: 1;
}

.mfc-comment-list,
.mfc-comment-list .children {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mfc-comment-list .children {
    margin: 1.125rem 0 0 1.375rem;
    border-left: 2px solid #e5e7eb;
    padding-left: .875rem;
}

.mfc-comment {
    margin: 0;
    border-bottom: 1px solid #e5e7eb;
    padding: 1.25rem 0;
}

.mfc-comment-card {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr);
    gap: .85rem;
}

.mfc-comment-avatar img {
    display: block;
    border-radius: 50%;
}

.mfc-comment-meta {
    align-items: baseline;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 0 0 .5rem;
}

.mfc-comment-author {
    color: #111315;
    font-size: 1rem;
}

.mfc-comment-date,
.mfc-comment-date:visited {
    color: var(--mfc-link-color);
    font-size: .8125rem;
    text-decoration: none;
}

.mfc-comment-content {
    color: #111315;
    font-size: 1rem;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.mfc-comment-content > :first-child {
    margin-top: 0;
}

.mfc-comment-content > :last-child {
    margin-bottom: 0;
}

.mfc-comment-actions {
    gap: .625rem;
    margin-top: .75rem;
}

.mfc-comment-actions a,
.mfc-comment-actions a:visited {
    display: inline-flex;
    border: 1px solid #d9dde3;
    border-radius: .25rem;
    padding: .375rem .625rem;
    color: var(--mfc-link-color);
    font-size: .8125rem;
    font-weight: 700;
    text-decoration: none;
}

.mfc-comment-actions a:hover,
.mfc-comment-actions a:focus {
    border-color: var(--mfc-link-color);
    color: var(--mfc-link-color);
}

.mfc-directed-reply {
    margin: 0 0 .5rem;
    color: #6b7280;
    font-size: .8125rem;
    overflow-wrap: anywhere;
}

.mfc-directed-reply a,
.mfc-directed-reply a:visited {
    color: var(--mfc-link-color);
    font-weight: 700;
}

.mfc-comment.is-mfc-reply-reference > .mfc-comment-card,
.mfc-comment.is-mfc-posted-comment > .mfc-comment-card {
    border-radius: .375rem;
    outline: 3px solid color-mix(in srgb, var(--mfc-link-color) 35%, transparent);
    outline-offset: .375rem;
}

.mfc-comment-awaiting {
    margin: 0 0 .625rem;
    border-radius: .25rem;
    padding: .5rem .625rem;
    color: #744700;
    background: #fff7d6;
    font-size: .875rem;
}

.mfc-comments-empty,
.mfc-comments-closed,
.mfc-login-to-comment {
    margin: 0;
    color: #4b5563;
    font-size: 1.0625rem;
}

.mfc-login-to-comment a,
.mfc-login-to-comment a:visited {
    color: var(--mfc-link-color);
    font-weight: 800;
}

@media (max-width: 600px) {
    .mfc-comment-list .children {
        margin-left: .75rem;
    }
}

.mfc-comment-spoiler {
    position: relative;
    overflow: hidden;
    min-height: 4.5rem;
    border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
    border-radius: .65rem;
    background: color-mix(in srgb, currentColor 5%, transparent);
}

.mfc-comment-spoiler-reveal {
    position: absolute;
    z-index: 1;
    inset: 0;
    width: 100%;
    border: 0;
    padding: 1rem;
    color: var(--mfc-link-color);
    background: transparent;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    backdrop-filter: blur(10px);
}

.mfc-comment-spoiler.is-revealed {
    overflow: visible;
    border-color: transparent;
    background: transparent;
}

.mfc-comment-spoiler.is-revealed .mfc-comment-spoiler-reveal {
    position: static;
    width: auto;
    padding: 0 0 .5rem;
    font-size: .85em;
    font-weight: 600;
    opacity: .7;
    backdrop-filter: none;
}

.mfc-comment-reactions {
    margin-top: .65rem;
}

.mfc-comment-like {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
    border-radius: 999px;
    padding: .3rem .65rem;
    color: var(--mfc-link-color);
    background: transparent;
    font: inherit;
    font-size: .85em;
    line-height: 1.2;
    cursor: pointer;
}

.mfc-comment-like:hover,
.mfc-comment-like:focus-visible,
.mfc-comment-like.is-liked {
    border-color: var(--mfc-link-color);
    color: var(--mfc-link-color);
    background: #fff8ef;
}

.mfc-comment-like.is-liked .mfc-comment-like-icon {
    color: #d63638;
}

.mfc-comment-like[aria-busy="true"] {
    opacity: .6;
}

.mfc-comment-feed-controls {
    position: relative;
    padding: 1.25rem 0 .25rem;
    text-align: center;
}

.mfc-load-comments,
.mfc-load-replies {
    border: 1px solid #d9dde3;
    border-radius: 999px;
    padding: .55rem 1rem;
    color: var(--mfc-link-color);
    background: #fff;
    font: inherit;
    font-size: .875rem;
    font-weight: 700;
    cursor: pointer;
}

.mfc-comments :is(a, button, textarea, input):focus-visible {
    outline: 2px solid var(--mfc-link-color);
    outline-offset: 2px;
}

.mfc-load-comments:hover,
.mfc-load-comments:focus-visible,
.mfc-load-replies:hover,
.mfc-load-replies:focus-visible {
    border-color: var(--mfc-link-color);
    background: #fff8ef;
}

.mfc-load-replies {
    margin: .75rem 0 .25rem 3.5rem;
    padding: .4rem .75rem;
    font-size: .8125rem;
}

.mfc-comment-sentinel {
    width: 100%;
    height: 1px;
}

.mfc-comment-skeleton {
    display: grid;
    gap: .55rem;
    padding: .4rem 0 .8rem;
}

.mfc-comment-skeleton[hidden] {
    display: none;
}

.mfc-comment-skeleton span {
    display: block;
    height: .75rem;
    border-radius: 999px;
    background: linear-gradient(90deg, #eef0f3 25%, #fafafa 50%, #eef0f3 75%);
    background-size: 200% 100%;
    animation: mfc-comment-skeleton 1.2s ease-in-out infinite;
}

.mfc-comment-skeleton span:nth-child(1) {
    width: 32%;
}

.mfc-comment-skeleton span:nth-child(2) {
    width: 88%;
}

.mfc-comment-skeleton span:nth-child(3) {
    width: 64%;
}

@keyframes mfc-comment-skeleton {
    from { background-position: 100% 0; }
    to { background-position: -100% 0; }
}

@media (prefers-reduced-motion: reduce) {
    .mfc-comment-skeleton span {
        animation: none;
    }
}
