.blog-comments{max-width:900px;margin:72px auto;padding:36px;background:#f7f9fc;border:1px solid #dce4ef;border-radius:18px;box-shadow:0 10px 30px rgba(16,38,69,.06);overflow-wrap:anywhere;color:#102645}
.blog-comments h2{font-size:clamp(1.7rem,3.2vw,2.3rem);margin:0 0 10px;letter-spacing:-.02em}.blog-comments h3{font-size:1.3rem;margin:0 0 24px}
.comments-status{min-height:1.65em;margin:0 0 18px;color:#45566d;font-size:.95rem}.comments-list{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:14px}
.comments-item{background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:20px 22px;box-shadow:0 4px 14px rgba(16,38,69,.04)}.comments-author{font-weight:750;margin:0 0 4px;font-size:1.02rem}.comments-item time{font-size:.84rem;color:#637289}.comments-text{white-space:pre-wrap;margin:14px 0 0;line-height:1.7}
.comments-form{background:#edf2f8;border:1px solid #d8e1ed;border-radius:14px;padding:32px;margin-top:30px}.comments-field{margin-bottom:20px}.comments-field label{display:block;font-weight:650;margin-bottom:8px}
.comments-field input,.comments-field textarea{display:block;width:100%;min-width:0;max-width:100%;font:inherit;line-height:1.5;color:#102645;background:#fff;border:1px solid #75869d;border-radius:8px;padding:12px;transition:border-color .15s ease,box-shadow .15s ease}.comments-field input:focus,.comments-field textarea:focus{border-color:#2445e6;box-shadow:0 0 0 3px rgba(36,69,230,.10)}.comments-field textarea{resize:vertical;min-height:150px}
.comments-field [aria-invalid=true]{border:2px solid #a12424}.comments-field-error{color:#8d1919;font-size:.9rem;margin:6px 0 0}.comments-field-error:empty{display:none}
.comments-note{font-size:.88rem;line-height:1.6;color:#45566d;margin:10px 0}.comments-feedback{line-height:1.6;margin:16px 0}.comments-feedback:empty{margin:0}
.blog-comments .button{white-space:normal;max-width:100%;text-align:center;min-height:44px}.blog-comments :disabled{opacity:.65;cursor:wait}
.blog-comments :focus-visible{outline:3px solid #2445e6;outline-offset:4px}.blog-comments [hidden]{display:none!important}
@media(max-width:900px){.blog-comments{margin:52px 24px;padding:30px}}@media(max-width:480px){.blog-comments{margin:40px 14px;padding:24px 16px;border-radius:14px}.comments-item{padding:18px 16px}.comments-form{padding:22px 16px;margin-top:24px}.comments-form .button{width:100%}}