.v2-panel.v2-comments { border: 1px solid #ffffff14; background: linear-gradient(145deg,#151517,#0e0e10); border-radius: 14px; padding: 1.25rem; box-shadow: inset 0 1px 0 #ffffff04; }
.v2-comments .v2-section-head { margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #ffffff09; }
.v2-comments .v2-section-title { display: flex; align-items: center; gap: .7rem; font-size: 1.6rem; line-height: 1.2; }
.v2-comments-count { display: grid; place-items: center; min-width: 26px; height: 26px; padding-inline: .4rem; border-radius: 8px; background: #ffffff08; border: 1px solid #ffffff08; color: #96969e; font-size: .72rem; font-weight: 500; font-variant-numeric: tabular-nums; }
.v2-comments .v2-comment-form { display: block; margin-bottom: 1.2rem; }
.v2-comments .v2-comment-input { display: block; width: 100%; min-height: 112px; max-height: 260px; resize: vertical; border-radius: 10px; border: 1px solid #ffffff12; background: #08080980; color: #e9e9ee; padding: .9rem 1rem; font-size: .85rem; font-weight: 400; line-height: 1.6; transition: border-color .2s,box-shadow .2s; }
.v2-comments .v2-comment-input::placeholder { color: #696970; }
.v2-comments .v2-comment-input:focus { border-color: #8ce5b848; box-shadow: 0 0 0 3px #8ce5b807; }
.v2-comment-compose-footer { display: flex; align-items: center; justify-content: space-between; padding-top: .65rem; }
.v2-comment-counter { color: #62626c; font-size: .68rem; font-variant-numeric: tabular-nums; white-space: nowrap; flex-shrink: 0; }
.v2-comments .v2-comment-form .v2-comment-submit { width: auto; flex: 0 0 auto; }
.v2-comments .v2-comment-form .v2-comment-submit { display: flex; align-items: center; gap: .65rem; min-width: 0; padding: .65rem .95rem; border: 1px solid #ffffff18; background: #efeff1; color: #161618; font-size: .78rem; border-radius: 9px; font-weight: 600; box-shadow: none; }
.v2-comment-submit svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.v2-comments .v2-comment-form .v2-comment-submit:hover { background: #fff; }
.v2-comment-form.is-pending .v2-comment-submit { opacity: .6; }
.v2-comments .v2-comment-list { gap: .65rem; }
.v2-comments .v2-comment-card { border: 1px solid #ffffff0e; border-radius: 11px; padding: .95rem; background: #ffffff03; box-shadow: none; gap: .7rem; }
.v2-comments .v2-comment-card::before { display: none; }
.v2-comments .v2-comment-avatar { width: 37px; height: 37px; border-radius: 10px; background: #ffffff0b; border: 1px solid #ffffff12; color: #e7e7ec; font-weight: 600; box-shadow: none; font-size: .85rem; }
.v2-comments .v2-comment-avatar img { object-fit: cover; border-radius: inherit; }
.v2-comments .v2-comment-head { align-items: flex-start; gap: .6rem; }
.v2-comments .v2-comment-author { display: flex; flex-wrap: wrap; gap: .15rem .5rem; align-items: baseline; min-width: 0; }
.v2-comments .v2-comment-author strong { color: #e8e8ee; font-size: .8rem; font-weight: 600; overflow-wrap: anywhere; }
.v2-comments .v2-comment-author span { color: #6f6f79; font-size: .68rem; overflow-wrap: anywhere; }
.v2-comments .v2-comment-date { color: #62626c; font-size: .63rem; font-weight: 400; white-space: nowrap; }
.v2-comments .v2-comment-meta { gap: .3rem; }
.v2-comments .v2-comment-body { color: #babac4; font-size: .84rem; font-weight: 400; line-height: 1.65; margin: .55rem 0 .65rem; overflow-wrap: anywhere; white-space: pre-wrap; }
.v2-comments .v2-comment-vote, .v2-comments .v2-comment-delete { color: #777780; background: transparent; border: 1px solid #ffffff0b; border-radius: 7px; font-weight: 400; }
.v2-comments .v2-comment-delete { border: 0; width: 25px; height: 25px; padding: .3rem; }
.v2-comments .v2-comment-vote { min-width: 42px; height: 28px; padding: .3rem .5rem; gap: .35rem; }
.v2-comments .v2-comment-vote strong { font-size: .67rem; font-weight: 500; }
.v2-comments .v2-comment-vote svg { width: 13px; height: 13px; }
.v2-comments .v2-comment-actions { gap: .4rem; }
.v2-comments .v2-comment-vote:hover { color: #dadade; background: #ffffff06; border-color: #ffffff16; }
.v2-comments .v2-comment-vote.is-like.is-active { color: #a1e4c0; background: #83dfac0a; border-color: #83dfac25; }
.v2-comments .v2-comment-vote.is-dislike.is-active { color: #e1d5d5; background: #ffffff09; border-color: #ffffff25; }
.v2-comments .v2-comment-delete:hover { color: #e2cdcd; background: #ffffff08; }
.v2-comments button:disabled { opacity: .5; cursor: wait; }
.v2-comments > .v2-button { background: #ffffff09; color: #d0d0d7; border: 1px solid #ffffff0f; border-radius: 9px; font-size: .8rem; }
.v2-comment-feedback { margin-bottom: .8rem; padding: .7rem .8rem; color: #d9bcbc; background: #ac757508; border: 1px solid #ac75751a; border-radius: 9px; font-size: .78rem; }
.v2-comments [hidden] { display: none !important; }
.v2-comments-empty { display: grid; justify-items: center; gap: .5rem; text-align: center; padding: 1.9rem .7rem 1.6rem; }
.v2-comments-empty svg { width: 26px; height: 26px; fill: none; stroke: #686871; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; margin-bottom: .3rem; }
.v2-comments-empty strong { color: #b5b5be; font-size: .85rem; font-weight: 500; }
.v2-comments-empty span { color: #63636d; font-size: .74rem; line-height: 1.6; }
.v2-comment-card.is-new { animation: comment-enter .25s ease-out; }
@keyframes comment-enter { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }
@media(max-width:560px) { .v2-panel.v2-comments { padding: 1rem; } .v2-comments .v2-section-title { font-size: 1.45rem; } .v2-comments .v2-comment-card { padding: .8rem; grid-template-columns: 32px minmax(0,1fr); } .v2-comments .v2-comment-avatar { width: 32px; height: 32px; border-radius: 8px; } .v2-comments .v2-comment-head { flex-wrap: wrap; gap: .2rem; } .v2-comments .v2-comment-meta { margin-left: auto; } }
@media(prefers-reduced-motion:reduce) { .v2-comment-card.is-new { animation: none; } }

.v2-comment-pagination { display:flex; justify-content:center; align-items:center; gap:1rem; margin-top:1rem; color:#85858e; font-size:.75rem; font-variant-numeric:tabular-nums; }
.v2-comment-pagination button { width:32px; height:32px; border:1px solid #ffffff12; border-radius:9px; background:#ffffff05; color:#d8d8df; font-size:1.2rem; cursor:pointer; }
.v2-comment-pagination button:hover:not(:disabled) { background:#ffffff0c; }
.v2-comment-pagination button:disabled { opacity:.3; cursor:default; }

.v2-comments .v2-comment-pagination { width:max-content; margin:1rem auto 0; padding:4px; gap:.65rem; border:1px solid #ffffff0b; border-radius:999px; background:#08080960; }
.v2-comments .v2-comment-pagination button { display:grid; place-items:center; padding:0; min-width:30px; width:30px; height:30px; flex:0 0 30px; border:0; border-radius:50%; background:transparent; color:#aaaab3; box-shadow:none; line-height:1; }
.v2-comments .v2-comment-pagination button svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.v2-comments .v2-comment-pagination [data-comment-page-label] { min-width:42px; text-align:center; font-size:.7rem; color:#898993; font-weight:400; }
.v2-comments .v2-comment-pagination button:hover:not(:disabled) { background:#ffffff09; color:#eeeef2; }
