@layer components {
  .issue-comments {
    margin-bottom: var(--space-8);
  }

  .issue-comments h2 {
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    margin-bottom: var(--space-4);
    padding-bottom: var(--space-2);
    border-bottom: 1px solid var(--color-border);
  }

  .comment {
    padding: var(--space-4);
    margin-bottom: var(--space-3);
    background-color: var(--color-white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    .comment__header {
      display: flex;
      gap: var(--space-3);
      align-items: center;
      margin-bottom: var(--space-3);
    }

    .comment__avatar {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background-color: var(--color-primary-100);
      color: var(--color-primary-700);
      font-weight: var(--font-semibold);
      font-size: var(--text-sm);
      flex-shrink: 0;
    }

    .comment__meta {
      flex: 1;
      min-width: 0;
    }

    .comment__author {
      display: block;
      font-weight: var(--font-semibold);
      color: var(--color-gray-900);
    }

    .comment__time {
      font-size: var(--text-sm);
      color: var(--color-text-muted);
    }
  }

  .comment__menu {
    margin-left: auto;

    .comment__menu-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 32px;
      height: 32px;
      background: none;
      border: none;
      border-radius: var(--radius-md);
      color: var(--color-gray-400);
      cursor: pointer;
      transition: all var(--transition-fast);
      &:hover {
        background-color: var(--color-gray-100);
        color: var(--color-gray-700);
      }
    }
  }

  .comment__body {
    line-height: var(--leading-relaxed);
    color: var(--color-gray-700);
    p {
      margin: 0 0 var(--space-2);
    }

    p:last-child {
      margin-bottom: 0;
    }
  }

  .comment-form {
    margin-top: var(--space-4);
    padding: var(--space-4);
    background-color: var(--color-white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    .form-group {
      margin-bottom: var(--space-3);
    }

    label {
      display: block;
      margin-bottom: var(--space-2);
      font-size: var(--text-sm);
      font-weight: var(--font-medium);
    }

    textarea {
      width: 100%;
      padding: var(--space-3);
      font-size: var(--text-base);
      font-family: inherit;
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      resize: vertical;
    }

    .form-actions {
      display: flex;
      justify-content: flex-end;
    }
  }

  [data-theme="dark"] {
    .comment {
      background: var(--color-surface);
      .comment__header {
        .comment__menu svg path {
          stroke: var(--color-white);
        }
      }
    }
    .comment-form {
      background: var(--color-hover);
    }
  }
}