:host {
  display: flex;
  flex: 1 1 auto;
  flex-flow: column nowrap;
  gap: 14px;
  align-items: flex-start;
}

.row {
  display: flex;
  flex-flow: row nowrap;
  gap: 6px;
  align-items: center;
  justify-content: flex-start;

  width: 100%;
  height: 24px;

  &.header {
    height: 32px;
  }

  svg.icon {
    width: 32px;
    height: 32px;
  }
}

table {
  border-spacing: 0;
  width: 100%;
  border: 1px solid var(--color-gray-eee);

  thead th {
    font-weight: 500;
    color: var(--color-gray-888);
    text-align: left;
    border-bottom: 1px solid var(--color-gray-eee);
  }

  th,
  td {
    padding: 6px 12px;
    line-height: 24px;
    border: none;

    &.correct {
      background-color: color-mix(in srgb, green 10%, var(--color-gray-fff));
    }

    &.incorrect {
      background-color: color-mix(in srgb, red 10%, var(--color-gray-fff));
    }
  }

  colgroup {
    > col:nth-child(1) {
      width: 60px;
    }

    > col:nth-child(2) {
      width: auto;
    }

    > col:nth-child(3) {
      width: 120px;
    }
  }
}
