.comments [hidden]{display:none!important}.comments.narrow{max-width:720px}.comments{max-width:820px;margin:2.5rem auto 0}.comments-title{display:flex;align-items:baseline;gap:.6em;font-size:1.15rem;letter-spacing:.15em;margin-bottom:1.1rem}.comments-title:after{content:"";flex:1;height:1px;align-self:center;background:linear-gradient(90deg,var(--border),transparent)}.comments-count{font-size:.8rem;letter-spacing:.05em;color:var(--ink-soft);font-weight:400}.comments .comment-form{display:grid;gap:.7rem;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.comments .comment-form textarea,.comments .comment-form input{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:.55em .7em;transition:border-color .2s ease,background .2s ease}.comments .comment-form textarea{resize:vertical;min-height:6.5em;line-height:1.75}.comments .comment-form textarea:focus,.comments .comment-form input:focus{outline:none;border-color:var(--accent-soft);background:var(--surface)}.comments .comment-form :disabled{opacity:.6;cursor:not-allowed}.comments .comment-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.comments .comment-fields label{display:grid;gap:.25rem;font-size:.78rem;color:var(--ink-soft);letter-spacing:.1em}.comments .comment-fields input{font-size:.9rem}.comments .hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}.comments .comment-captcha{margin-top:.6rem}.comments .comment-captcha:empty{display:none}.comments .comment-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.comments .comment-note{margin:0;font-size:.8rem;color:var(--ink-soft)}.comments .comment-actions .btn{cursor:pointer;flex-shrink:0}.comments .comment-actions .btn:disabled{opacity:.6;cursor:wait}.comments .comment-error{margin:0;font-size:.85rem;color:var(--seal)}.comments .replying{display:flex;justify-content:space-between;margin:0;font-size:.85rem;color:var(--ink-soft)}.comments .link-btn{background:none;border:none;padding:0;font:inherit;font-size:.82rem;color:var(--ink-soft);cursor:pointer;letter-spacing:.1em}.comments .link-btn:hover{color:var(--accent)}.comments-state{margin:1.6rem 0 0;text-align:center;color:var(--ink-soft);font-size:.9rem;font-family:var(--font-kai);letter-spacing:.1em}.comments .comment-list,.comments .comment-replies{list-style:none;margin:0;padding:0}.comments .comment-list{margin-top:1.4rem}.comments .comment{display:grid;grid-template-columns:2.4rem minmax(0,1fr);column-gap:.85rem;padding:1.1rem 0;border-top:1px dashed var(--border)}.comments .comment-list>.comment:first-child{border-top:none}.comments .comment-reply-slot{grid-column:2}.comments .comment-reply-slot:not(:empty){margin-top:.8rem}.comments .comment-avatar{width:2.4rem;height:2.4rem;border-radius:50%;display:grid;place-items:center;font-family:var(--font-kai);font-size:1.05rem;color:var(--on-accent);user-select:none}.comments .tone-0{background:var(--accent)}.comments .tone-1{background:var(--accent-soft)}.comments .tone-2{background:var(--ink-soft)}.comments .tone-3{background:#8c6a43}.comments .tone-author{background:var(--seal);border-radius:4px}.comments .comment-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem;margin:0 0 .3rem;font-size:.85rem;color:var(--ink-soft)}.comments .comment-name{color:var(--ink);font-weight:600;font-size:.95rem}.comments a.comment-name:hover{color:var(--accent)}.comments .author-seal{font-family:var(--font-kai);font-size:.72rem;color:var(--seal);border:1px solid var(--seal);border-radius:2px;padding:0 .3em;letter-spacing:.1em;line-height:1.5}.comments .comment-to{color:var(--ink-soft)}.comments .comment-body{line-height:1.85;color:var(--ink);overflow-wrap:anywhere}.comments .comment-tools{margin-top:.25rem}.comments .comment-replies{margin-top:.4rem;padding-left:.9rem;border-left:2px solid var(--border)}.comments .comment-replies .comment{grid-template-columns:1.9rem minmax(0,1fr);padding:.8rem 0}.comments .comment-replies .comment:first-child{border-top:none}.comments .comment-replies .comment-avatar{width:1.9rem;height:1.9rem;font-size:.9rem}.comments .comment.is-new>.comment-main{animation:ink-in 1.6s ease}@keyframes ink-in{0%{background:color-mix(in srgb,var(--accent-soft) 18%,transparent)}to{background:transparent}}@media(max-width:640px){.comments .comment-fields{grid-template-columns:1fr}.comments .comment-actions{flex-direction:column-reverse;align-items:stretch}.comments .comment-note{text-align:center}}@media(prefers-reduced-motion:reduce){.comments .comment.is-new>.comment-main{animation:none}}
