.-body-solid .p-commentArea,
.p-commentArea {
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
  font-size: var(--jp-font-size);
}

.c-commentList {
  list-style-type: none;
  padding: 0;
}

.c-commentList li {
  margin-bottom: 20px;
}

.c-commentList .children {
  border-left: 2px solid var(--border-comment);
  margin-left: 0.5em;
  margin-top: 1em;
  padding: 0.3em 0 0 0.2em;
}

.comment-body {
  padding-left: 3px;
  font-size: var(--jp-font-size);
}

.comment-meta {
  font-weight: 700;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 3px;
  font-size: 0.8rem;
}

.comment-number {
  margin-right: 5px;
}

.comment-author-name.comment-author-regular {
  color: #166534;
  font-style: italic;
}

.comment-author-name.comment-author-admin {
  color: #b91c1c;
  font-style: normal;
}

.comment-date,
.comment-id {
  white-space: nowrap;
}

.comment-content {
  margin-top: 5px;
  margin-left: 20px;
}

.comment-content,
.comment-content > * {
  font-size: var(--jp-font-size);
  line-height: var(--jp-line-height);
}

.comment-reply-link {
  margin-left: auto;
  display: inline-block;
  background: var(--w7-el-grad, linear-gradient(#f2f2f2 45%, #ebebeb 45%, #cfcfcf));
  border: 1px solid var(--w7-el-bd, #8e8f8f);
  border-radius: 0;
  box-shadow: var(--w7-el-sd, inset 0 0 0 1px #fffc);
  color: #222;
  font-size: 0.75rem;
  padding: 2px 8px;
  text-decoration: none;
  cursor: pointer;
  transition: none;
}

.comment-reply-link:hover {
  border-color: var(--w7-el-bd-h, #3c7fb1);
  background: var(--w7-el-grad-h, linear-gradient(#eaf6fd 45%, #bee6fd 0, #a7d9f5));
  color: #222;
}

.comment-reply-link:active {
  border-color: var(--w7-el-bd-a, #6d91ab);
  background: var(--w7-el-grad-a, linear-gradient(#e5f4fc, #c4e5f6 30% 50%, #98d1ef 50%, #68b3db));
  box-shadow: var(--w7-el-sd-a, inset 1px 1px 0 #0003, inset -1px 1px 0 #0001);
}

.comment-form {
  padding: 2rem;
  margin-top: 2rem;
}

.comment-form .form-title,
#respond .comment-reply-title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color_htag, var(--color_text));
  margin: 0 0 1.5rem;
  padding-bottom: 0.75rem;
  border-bottom: 2px solid var(--brand-terracotta);
}

#respond .comment-reply-title small {
  margin-left: 0.75rem;
  font-size: 0.75rem;
}

.comment-form .logged-in-as {
  font-size: 0.8rem;
  color: var(--text-comment-muted);
  margin-bottom: 1.5rem;
  padding: 0.75rem 1rem;
  background: var(--nettoge-page-bg);
  border-left: 3px solid var(--color_htag, var(--color_text));
}

.comment-form .logged-in-as a,
.comment-form .agreement-link {
  color: var(--color_htag, var(--color_text));
}

.comment-form .form-group {
  margin-bottom: 1.5rem;
}

.comment-form label {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 0.5rem;
  color: var(--color_text);
}

.comment-form .required {
  color: var(--text-form-error);
  margin-left: 2px;
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form textarea,
.comment-form input[type="file"] {
  width: 100%;
  padding: 0.875rem 1rem;
  border: 1px solid var(--border-form-input);
  border-radius: 0;
  font-size: 0.9rem;
  color: var(--color_text);
  background: var(--nettoge-page-bg);
}

.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form textarea:focus {
  outline: none;
  border-color: var(--brand-terracotta);
  box-shadow: 0 0 0 3px rgba(107, 107, 107, 0.14);
}

.comment-form textarea {
  min-height: 150px;
  resize: vertical;
  line-height: 1.7;
}

.comment-form .checkbox-group {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  margin: 1.5rem 0;
  padding: 1rem;
  background: var(--nettoge-page-bg);
  border: 1px solid var(--border-comment);
}

.comment-form .checkbox-group input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  margin-top: 2px;
  accent-color: var(--color_htag, var(--color_text));
  flex-shrink: 0;
}

.comment-form .checkbox-group label {
  font-size: 0.8rem;
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
  color: #333;
  line-height: 1.5;
  font-weight: 400;
}

.comment-form .submit-button,
#commentform.comment-form #submit.submit-button {
  display: inline-block;
  padding: 1rem 2.5rem;
  background: var(--brand-terracotta);
  color: #fff;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 2px solid var(--brand-terracotta);
  cursor: pointer;
  margin-top: 0.5rem;
}

.comment-form .submit-button:hover,
#commentform.comment-form #submit.submit-button:hover {
  background: var(--brand-terracotta-dark);
  border-color: var(--brand-terracotta-dark);
  color: #fff;
}

.comment-reply-cancel {
  display: inline-block;
  margin: -0.5rem 0 1rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--color_link);
  font-size: 0.82rem;
  text-decoration: underline;
  text-underline-offset: 0.12em;
  cursor: pointer;
}

.comment-reply-cancel[hidden] {
  display: none !important;
}

.comment-editor-wrap {
  position: relative;
}

.comment-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  background: var(--nettoge-page-bg);
  border: 1px solid var(--border-comment);
  border-bottom: none;
  position: relative;
}

.toolbar-spacer {
  flex: 1;
}

.toolbar-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 26px;
  padding: 0;
  background: var(--surface-comment-input);
  border: 1px solid #ccc;
  border-radius: 2px;
  color: #555;
  cursor: pointer;
}

.comment-reply-context {
  margin: 0.75rem 0;
  padding: 0.75rem 0.85rem;
  background: var(--nettoge-page-bg, #f7f7f7);
  border: 1px solid var(--border-comment, #d8d8d8);
  border-radius: 6px;
  font-size: 0.88rem;
}

.comment-reply-context__title {
  display: block;
  margin-bottom: 0.35rem;
  color: #777;
  font-size: 0.78rem;
  font-weight: 700;
}

.comment-reply-context__item {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.5rem;
  line-height: 1.6;
}

.comment-reply-context__number,
.comment-reply-context__author {
  font-weight: 700;
}

.comment-reply-context__excerpt {
  color: #666;
}

@media (max-width: 599px) {
  .comment-form {
    padding: 1.25rem 0;
  }

  .comment-form .submit-button,
  #commentform.comment-form #submit.submit-button {
    width: 100%;
    text-align: center;
  }
}
