.comments-wrapper{
    max-width:46rem;
    margin-top:var(--space-8)
}
.comment-user-bar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:.5rem;
    font-size:.85rem;
    color:var(--muted)
}
.comment-user-bar strong{
    color:var(--text);
    font-weight:600
}
.comment-user-bar a{
    color:var(--accent);
    text-decoration:none;
    font-weight:500
}
.comment-user-bar a:hover{
    text-decoration:underline
}
.comment-user-bar .dot{
    opacity:.5
}
.comments-sort{
    display:flex;
    gap:.5rem;
    margin-bottom:1rem
}
.sort-btn{
    padding:.35rem .8rem;
    border-radius:999px;
    background:var(--surface-soft);
    border:none;
    font-size:.8rem;
    cursor:pointer;
    color:var(--muted)
}
.sort-btn.active{
    background:var(--accent);
    color:#fff
}
.comments-list{
    display:flex;
    flex-direction:column;
    gap:.75rem
}
ul.comment-list{
    list-style:none;
    margin:0;
    padding:0
}
.comment-list .children{
    margin:.5rem 0
}
.comment-item{
    display:block
}
.comment-item+.comment-item{
    margin-top:.5rem
}
.comment-inner{
    display:flex;
    gap:.75rem;
    padding:.75rem .9rem;
    border-radius:.65rem;
    background:rgba(0,0,0,.05)
}
[data-theme="dark"] .comment-inner{
    background:var(--bg-card)
}
.comment-avatar{
    width:2.25rem;
    height:2.25rem;
    min-width:2.25rem;
    border-radius:50%;
    overflow:hidden
}
.comment-avatar img{
    width:100%!important;
    height:100%!important;
    object-fit:cover;
    display:block
}
.comment-meta{
    display:flex;
    align-items:center;
    gap:.4rem;
    font-size:.8rem;
    margin-bottom:.2rem
}
.comment-author{
    font-weight:600
}
.comment-time{
    color:var(--muted);
    font-size:.75rem
}
.comment-text{
    font-size:.9rem;
    line-height:1.5
}
.comment-body{
    flex:1;
    min-width:0
}
.comment-actions{
    display:flex;
    align-items:center;
    width:100%;
    margin-top:.35rem
}
.reply-btn{
    flex-shrink:0
}
.comment-reactions{
    margin-left:auto;
    display:flex;
    gap:.4rem
}
.comment-reaction{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    padding:.35rem .7rem;
    border-radius:999px;
    background:var(--surface-soft);
    border:none;
    font-size:.75rem;
    font-weight:600;
    cursor:pointer;
    transition:.2s
}
.comment-reaction svg{
    width:16px;
    height:16px;
    fill:none;
    stroke:currentColor;
    stroke-width:2
}
.comment-reaction.like:hover,.comment-reaction.active.like{
    background:color-mix(in srgb,#22c55e 15%,transparent);
    color:#22c55e
}
.comment-reaction.dislike:hover,.comment-reaction.active.dislike{
    background:color-mix(in srgb,#ef4444 15%,transparent);
    color:#ef4444
}
.reply-btn a{
    font-size:.75rem;
    font-weight:600;
    color:var(--accent);
    padding:.35rem .7rem;
    border-radius:999px;
    background:color-mix(in srgb,var(--accent) 10%,transparent);
    transition:.2s
}
.reply-btn a:hover{
    background:var(--accent);
    color:#fff
}
.comment-item>.children{
    margin:.35rem 0 0;
    padding-left:2.2rem
}
.comment-item>.children .comment-item{
    margin-top:.35rem
}
.comment-item>.children .comment-inner{
    background:rgba(0,0,0,.04)
}
[data-theme="dark"] .comment-item>.children .comment-inner{
    background:#1b2027
}
.comment-form,.comment-form p{
    margin:0;
    padding:0
}
.comment-form input,.comment-form textarea{
    float:none!important
}
.comment-form{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.75rem
}
.comment-form-comment{
    grid-column:1/-1
}
.comment-form-author{
    grid-column:1
}
.comment-form-email{
    grid-column:2
}
.comment-form-url{
    display:none
}
.comment-form textarea,.comment-form input[type="text"],.comment-form input[type="email"]{
    width:100%
}
.comment-form textarea{
    min-height:6rem;
    border-radius:.7rem;
    border:1px solid var(--border);
    padding:.75rem .85rem;
    font-size:.9rem;
    resize:vertical;
    background:var(--bg)
}
.comment-form input[type="text"],.comment-form input[type="email"]{
    height:2.6rem;
    border-radius:.65rem;
    border:1px solid var(--border);
    padding:0 .75rem;
    font-size:.85rem;
    background:var(--bg)
}
.comment-form-cookies-consent{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    gap:.6rem;
    font-size:.8rem;
    color:var(--muted)
}
.comment-form-cookies-consent input{
    width:.95rem!important;
    height:.95rem
}
.comment-form-cookies-consent label{
    display:inline!important
}
.form-submit{
    grid-column:1/-1;
    display:flex;
    justify-content:flex-end
}
.form-submit input[type="submit"]{
    width:auto!important;
    display:inline-flex!important
}
.comment-submit{
    padding:.6rem 1.4rem;
    border-radius:999px;
    border:none;
    background:var(--accent);
    color:#fff;
    font-size:.9rem;
    font-weight:600;
    cursor:pointer
}
.comment-form-wrap>p{
    margin:0;
    font-size:.85rem;
    color:var(--muted)
}
.comment-form-wrap>p+p{
    margin:.25rem 0 .75rem
}
.comment-form label{
    display:none
}
.comment-form input::placeholder,.comment-form textarea::placeholder{
    color:var(--muted);
    opacity:.7
}
.comment-form input:focus,.comment-form textarea:focus{
    border-color:var(--accent);
    outline:none;
    box-shadow:0 0 0 .1rem color-mix(in srgb,var(--accent) 20%,transparent)
}
.comment-form-wrap{
    margin-bottom:2rem
}
@media (max-width:640px){
    .comment-form{
        grid-template-columns:1fr
}
    .comment-form-author,.comment-form-email{
        grid-column:1/-1
}
}
[data-theme="dark"]{
    --bg-soft:#0f1115;
    --bg-card:#161a20;
    --border-soft:rgba(255,255,255,.06);
    --text-main:rgba(255,255,255,.92);
    --text-muted:rgba(255,255,255,.55)
}
[data-theme="dark"] .comments-wrapper{
    color:var(--text-main)
}
[data-theme="dark"] .comment-text{
    color:var(--text-main)
}
[data-theme="dark"] .comment-time{
    color:var(--text-muted)
}
[data-theme="dark"] .comment-form textarea,[data-theme="dark"] .comment-form input[type="text"],[data-theme="dark"] .comment-form input[type="email"]{
    background:#0f1318;
    border:1px solid var(--border-soft);
    color:var(--text-main)
}
[data-theme="dark"] .comment-form textarea::placeholder,[data-theme="dark"] .comment-form input::placeholder{
    color:var(--text-muted)
}
[data-theme="dark"] .comment-form input:focus,[data-theme="dark"] .comment-form textarea:focus{
    border-color:var(--accent);
    box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)
}
[data-theme="dark"] .comment-reaction{
    background:rgba(255,255,255,.04);
    color:rgba(255,255,255,.75)
}
[data-theme="dark"] .comment-reaction.like:hover{
    background:rgba(34,197,94,.2);
    color:#4ade80
}
[data-theme="dark"] .comment-reaction.dislike:hover{
    background:rgba(239,68,68,.2);
    color:#f87171
}
[data-theme="dark"] .comment-form-cookies-consent,[data-theme="dark"] .comment-form-wrap>p{
    color:var(--text-muted)
}
.comment-avatar-fallback{
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px!important;
    height:36px!important;
    border-radius:50%;
    color:#fff;
    font-weight:700;
    font-size:16px;
    line-height:1;
    text-align:center;
    text-transform:uppercase;
}
.comment-avatar-img{
    border-radius:50%;
    object-fit:cover;
    display:block;
}
