.comments-section{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(128,128,128,0.2);}
.comments-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font:inherit;color:inherit;background:transparent;border:0;padding:.5rem 0;width:100%;text-align:left;}
.comments-toggle .chevron{display:inline-block;transition:transform .2s ease;}
.comments-section[data-open="true"] .comments-toggle .chevron{transform:rotate(90deg);}
.comments-body{overflow:hidden;max-height:0;transition:max-height .3s ease;}
.comments-section[data-open="true"] .comments-body{max-height:none;overflow:visible;}
.comment-list{list-style:none;padding:0;margin:1rem 0;display:flex;flex-direction:column;gap:1rem;}
.comment-item{padding:.75rem 1rem;border-radius:8px;background:rgba(128,128,128,.08);}
.comment-item .meta{font-size:.85em;opacity:.7;margin-bottom:.25rem;}
.comment-item .content{white-space:pre-wrap;word-break:break-word;}
.comment-form textarea{width:100%;min-height:90px;padding:.6rem;border:1px solid rgba(128,128,128,.3);border-radius:6px;background:transparent;color:inherit;font:inherit;box-sizing:border-box;}
.comment-form .form-row{display:flex;gap:.5rem;margin-top:.5rem;align-items:center;flex-wrap:wrap;}
.comment-form input[name="nickname"]{flex:1;min-width:120px;padding:.4rem .6rem;border:1px solid rgba(128,128,128,.3);border-radius:6px;background:transparent;color:inherit;font:inherit;}
.comment-form button{padding:.45rem 1.1rem;border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;cursor:pointer;font:inherit;}
.comment-form button:hover{opacity:.8;}
.comment-form button[disabled]{opacity:.5;cursor:not-allowed;}
.comments-empty,.comments-login-hint{opacity:.7;font-size:.9em;}
.comments-error{color:#dc2626;font-size:.85em;margin-top:.5rem;}
.comment-replies{list-style:none;padding:.5rem 0 0 1.25rem;margin:.5rem 0 0;border-left:2px solid rgba(128,128,128,.2);display:flex;flex-direction:column;gap:.5rem;}
.comment-author-reply .badge-author{display:inline-block;margin-left:.4rem;padding:0 .4rem;border:1px solid currentColor;border-radius:6px;font-size:.75em;opacity:.8;}
.comment-author-reply{background:rgba(128,128,128,.14);}
